- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android应用程序架构 * 单元目标 了解Android资源文件的种类 掌握资源的基本使用方法 了解活动(Activity)组件 了解服务(Service)组件 了解广播接收者(BroadCast receivers)组件 了解内容提供者(Content Providers)组件 掌握AndroidManifest.xml文件结构 * 本单元基础知识 Android应用程序中的资源 Android的4种应用程序组件 AndroidManifest.xml文件的结构 * Android应用程序中的资源 任何类型的程序都要使用资源,Android应用程序使用的资源大部分都被封装在apk文件中,并随apk文件一起发布。 * Android程序中的资源-存放位置 Eclipse ADT新建项目向导生成目录结构如下: * Android程序中的资源-存放位置(续) 在上图中,res文件夹用于存放资源,该目录下有3个子目录: drawable:它包含了icon.png,可以判断用于图像文件 layout:从名称可以判断是用来保存布局文件的 values:打开其中包含的strings.xml文件可以看出,内容均为基于XML格式的key-value对,可以判断values目录是用来保存字符串资源的 * Android应用程序中的资源-种类 Android支持3种类型的资源: XML文件 图像 任意类型的资源,如音视频 以上文件放在res目录的不同子目录中,编译Android应用程序时,系统会使用一个资源文件编译程序(aapt)对这些资源文件进行编译 * Android应用程序中的资源-种类(续) Android支持资源列表: res\anim:用于存放帧动画或补间动画文件 res\drawable:可以存放多种格式的图像文件,例如,bmp、png、gif等,目录中的图像不需要分辨率非常高,aapt工具会优化该目录中的图像文件 res\layout:该目录用于存放XML布局文件 res\values:使用该目录下XML文件的内容作为资源,这些文件定义了各种类型的key-value对,根据不同的标签定义不同类型的key-value对。例如,通过string标签定义字符串key-value对,通过color标签定义颜色值的key-value对 * Android应用程序中的资源-种类(续) Android支持资源列表: res\xml:该目录中的文件可以是任意类型的XML文件,这些XML文件可以在运行时被读取 res\raw:该文件也被封装在apk文件中,但不会被编译,可以存放任意类型的文件 在任一个目录中放入资源文件后,ADT会在gen目录中建立一个R.java文件,该文件为一个R类,该类为每一个资源定义了唯一的ID,通过这些ID可以引用这些资源 * Android应用程序的资源-使用方法 在Hello World示例中,R.java内容如下: public final class R{ public static final class drawable{ public static final int icon= 0x7f020000; } public static final class layout{ public static final int mai= 0x7f030000; } public static final class string{ public static final int hello = 0x7f040000; public static final int app_name= 0x7f040001; } } * Android应用程序的资源-使用方法(续) 在Hello World示例中,通过R.java文件内容,可以看出ADT为res目录中每一个子目录或标签都生成了一个静态子类,同样,它也为XML布局文件中指定id属性的组件生成了唯一的ID,并封装在id子类中,这样,在Android应用程序中就可以通过ID使用这些组件 * Android应用程序的资源-使用方法(续) 资源既可以在程序的代码中使用,也可以在XML文件中使用 应用程序Java代码中:setTitle(R.string.app_name),可以看到在使用资源时直接引用了R.string.app_name这个ID值,直接使用0x7f040001也可以,但为了使程序更容易维护,一般会直接使用在R的内嵌类中定义的变量名 XML文件中:android:text=“@string/hello”,其中hello就是资源文件string.xml中的一个字符串 * Android应用程序组件 And
文档评论(0)