公司最近要开发一款Android平台下的应用,通讯软件,所以年后上班一直在研究Android方面的内容。

  使用Eclipse开发的Android,对于一个新建的Android项目,自动生成的项目结构如下图:

  自动生成的目录介绍:

  • src目录:主要是存放编写的Java代码。
  • assets目录:资源目录。
  • res目录:存放图片、布局文件、字符串、菜单等文件。
  • bin目录:输出文件夹,如生成的APK文件。
  • project.properties:工程属性文件配置。
  • gen目录:系统自动生成的代码目录,存放R.java.

  这个R.java文件是系统自动生成的文件,非常的重要。这个R.java默认有attr、drawable、layout、string等4个静态内部类,每个类对应一种资源。例如在工程中添加一幅图片,那么工程就会在此类的drawable内部类中添加一条数据,如果删除了此图片,工程则会自动删除此条数据。

  

  在res资源文件夹下包含有以下的文件:

  Drawable存放工程图片的信息,默认png格式的图片。

  Layout存放工程的布局文件以.xml结束。

  Values文件夹下存放一个很重要的string.xml,此文件夹存放的是自定义的字符串和数值。

  除了这个文件之外,还可以定义arrays.xml(用来定义数组)、color.xml(用来定义颜色和颜色字符串数值)、dimens.xml(用来定义尺寸数值)、styles.xml(用来定义样式)。这些文件只是为了区分资源的类型,一种开发规范,便于开发人员识别修改,其实可以全部定义在string.xml文件中,均可以自动生成到R.java,便于使用。

资源文件分别的格式:

数组

<string-array name="city"><item >北京</item><item >上海</item></string-array>

颜色,使用二进制的RGB值表示:

<color name="bgcolor">#FFCCFF</color> 

尺寸

<dimen name="width">20dp</dimen>

样式

    <sytle name="customText"><item name="android:textSize">20sp</item></sytle>

  在安卓的activity中,均有一个全局的方法,getResource()来获取资源,具体资源的获取方法如下:

文件

取值方式

String.xml

getResource().getString(resourceId)、getResource().getText(resourceId)

Arrays.xml

getResource().getStringArray(resourceId)

colors.xml

getResource().getDarwable(resourceId)、getResource().getColor(resourceId)

Dimens.xml

getResource().getDimension(resourceId)

Styles.xml

不需要取值

  

  AndroidManifest.xml文件介绍

  AndroidManifest.xml是每个android程序中必须的文件。它位于整个项目的根目录,描述了package中暴露的组件(activities、services等等),他们各自的实现类,各种能被处理的数据和启动位置。能声明程序中的Activity、ContentProviders、ServersIntent Receivers、permissions和instrumentation(安全控制和测试)。

示例:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="bgxt.demo"android:versionCode="1"android:versionName="1.0" ><uses-sdk android:minSdkVersion="10" /><applicationandroid:icon="@drawable/ic_launcher"android:label="@string/app_name" ><activityandroid:label="@string/app_name"android:name=".SimpleActivity" ><intent-filter ><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity></application>
</manifest>

  

  其中manifest节点中的一些属性,介绍:

  • Packgae:包,表示整个java应用程序的主要包名,而且是一个默认的程序名称。
  • Android:versionCode:表示该工程说生产的apk的版本号,1开始,逐渐递增。
  • Android:versionName:表示版本的一个名称。类似于:1.0、2.0.
  • Android:installLoacation:自动寻找安装的地方,ROM或者SDCard,默认属性为自动。可选属性有auto:系统默认、internalOnly:仅仅只能安装在ROM上、preferExternal:会直接安装在sdcard上。

  Application节点的一些属性介绍:

  • Android:icon:表示应用程序的图标,Logo图片。
  • Android:label:表示应用的工程文字说明。

  Activity节点的属性介绍:

  • Android:name:表示整个应用程序的主程序的名称。
  • Intent-filter :意图过滤器,用来过滤用户的一些动作和操作。

转载于:https://www.cnblogs.com/britalient/p/3173081.html

Android学习笔记--项目框架介绍相关推荐

  1. 爬虫学习笔记-scrapy框架介绍

    优势 批量爬取数据 高效率 架构图 各模块的功能 1,Scrapy Engine(引擎):Scrapy框架的核心部分.负责在Spider和ItemPipeline.Downloader.Schedul ...

  2. Android学习笔记:Android基础知识点(不断更新中)

    1.Android学习笔记:OkHttp 2.Android学习笔记:更新UI的方法(UI线程和非UI线程) 3.Android学习笔记:Volley 4.Android学习笔记:Handler 5. ...

  3. Android学习笔记---27_网络通信之通过GET和POST方式提交参数给web应用,以及使用httpClient,来给web项目以post方式发送参数

    Android学习笔记---27_网络通信之通过GET和POST方式提交参数给web应用,以及使用httpClient,来给web项目以post方式发送参数 27_网络通信之通过GET和POST方式提 ...

  4. Hadoop学习笔记一 简要介绍

    Hadoop学习笔记一 简要介绍 这里先大致介绍一下Hadoop.     本文大部分内容都是从官网Hadoop上来的.其中有一篇介绍HDFS的pdf文档,里面对Hadoop介绍的比较全面了.我的这一 ...

  5. Android学习笔记之AndroidManifest.xml文件解析(摘自皮狼的博客)

    Android学习笔记之AndroidManifest.xml文件解析 一.关于AndroidManifest.xml AndroidManifest.xml 是每个android程序中必须的文件.它 ...

  6. Android学习笔记 75. 单元测试

    Android学习笔记 Android 开发者基础知识 (Java) -- Google Developers 培训团队 文章目录 Android学习笔记 Android 开发者基础知识 (Java) ...

  7. Android学习笔记第五篇--网络连接与云服务(一)

    Android学习笔记第五篇–网络连接与云服务 第一章.无线连接设备 ​ 除了能够在云端通讯,Android的无线API也允许在同一局域网内的设备通讯,**甚至没有连接网络,而是物理具体相近,也可以相 ...

  8. Android学习笔记36:使用SQLite方式存储数据

    在Android中一共提供了5种数据存储方式,分别为: (1)Files:通过FileInputStream和FileOutputStream对文件进行操作.具体使用方法可以参阅博文<Andro ...

  9. Typescript 学习笔记一:介绍、安装、编译

    前言 整理了一下 Typescript 的学习笔记,方便后期遗忘某个知识点的时候,快速回忆. 为了避免凌乱,用 gitbook 结合 marketdown 整理的. github地址是:ts-gitb ...

  10. Android学习笔记之(一)开发环境搭建

    Android学习笔记之(一)开发环境搭建 zouxy09@qq.com http://blog.csdn.net/zouxy09 至于说Android是什么之类的俺就不啰嗦了,因为它离我们太近了.直 ...

最新文章

  1. 前端见微知著工具篇:Bower组件管控
  2. Oracle系统用户的默认密码及功能
  3. andorid 第五天 了解xml与应用程序之间的关系
  4. DataGridView数据更新至数据库-逐条更新
  5. 生成私钥 p q rsa_【安全】理解 RSA 算法
  6. :批量制作档案表,要从excel表格中将每个人的数据导入到docx档案
  7. 艾诺迪亚4一次性完美刷经验刷金钱方法图解[亲测无需闪退游戏]
  8. linux在线扩展文件系统空间ext2online
  9. 法学类计算机专业,就业蓝皮书:计算机类专业领跑薪酬榜 法学专业被亮“红牌”...
  10. 华硕afudos刷bios_华硕M2N-MX SE PLUS主板 如何用afudos命令刷BIOS
  11. 多元统计分析基于r课后答案_智慧树多元统计分析及R语言建模课后答案
  12. 手机软件APP下载类网站Pbootcms模板 游戏软件应用网站源码 模板自适应手机端
  13. 基于C语言的移位密码和仿射密码
  14. 【无标题】半导体器件特性曲线测试方法的研究
  15. wannacry作者捉到了吗_WannaCry爆发的根源原来是它?
  16. 使用高德地图API获取天气
  17. 鸿蒙也是基于linux吗,鸿蒙系统是基于linux开发的吗
  18. PMP笔记:Line Manager与Functional Manager
  19. Java笔试面试题三(编程算法)
  20. java mac地址 加冒号_Mac加减法,Mac地址加1,Mac地址减1

热门文章

  1. SARscape操作:Sentinel-1 SLC影像镶嵌、裁切
  2. 并查集的介绍和其六种优化(c++)
  3. Doc2EDAG: An End-to-End Document-level Framework for Chinese Financial Event Extraction
  4. Hibernate-逆向工程
  5. Android LiveData组件分析
  6. Flutter之BottomSheet
  7. c语言异或 反汇编,[原创]qq反汇编日志(1,2,3,4)
  8. OPPO 实时数仓揭秘:从顶层设计实现离线与实时的平滑迁移
  9. Dubbo 是如何控制并发数和限流的?
  10. 实现视频播放器倍速、清晰度切换、m3u8下载功能