Android应用的R类与资源文件的关系说明
2016-02-17 15:46
363 查看
http://www.oschina.net/question/565065_74799
R类与资源文件关系说明
1. 静态类drawable类对应res文件夹中的drawable-hdpi、drawable-ldpi、drawable-mdpi三个文件夹,drawable类中每个整型的静态常量名与这三个文件夹中的图片资源文件相同(不含扩展名),这三个文件夹中相同文件名的资源对应同一个整型变量,Android系统会根据不同类型的屏幕分辨率,自动选取合适的图片资源。
2. 静态类layout类对应res文件夹中的layout文件夹,layout文件夹中的每个布局文件在layyout类中都会有一个与文件名相同的整型静态变量。
3. 静态类string对应res/values文件夹中每个XML文件中的字符串资源,如上图中的strings.xml文件定义如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello"> Hello World, HelloWorld!</string>
<string name="app_name">HelloWorld</string>
</resources>
string类使用中每个静态常量名与<string>元素中name属性值相同。
四.扩展说明
1. 资源文件与清单文件AndroidManifest.xml
A. <application>元素中的android:icon属性会通过@drawable/icon的方式引用drawable资源文件夹中定义的icon.png图片作为Android桌面的启动图标; android:label会通过 @string/app_name的方式来引用values资源文件夹中XML文件中name属性值是app_name的<string>元素,并把<string>元素值作为Android桌面启动图标下方的应用程序名称。
B. <activity>元素中的android:label属性通过@string/app_name方式来引用name属性值是app_name的<string>元素值,作为Activity的标题。
2. res文件夹下的所有文件不要使用大写字母命名。
3. 不要试图修改R类中的内容,Android开发工具会自动生成会维护这个静态类
4. Activity创建时会调用setContentView()方法把布局设置到Activity中
5. drawable、layout、values文件中没有文件数量的限制,可以根据需要定义多个资源文件,其中在drawable和layout文件中每追加一个文件,在drawable和layout静态类中就会自动生成一个与文件名相同整型静态变量。在values文件夹中每追加一个XML文件,文件中<string>元素的name属性值都会在string静态类中对应一个与属性值相同的静态整型常量。
R类与资源文件关系说明
1. 静态类drawable类对应res文件夹中的drawable-hdpi、drawable-ldpi、drawable-mdpi三个文件夹,drawable类中每个整型的静态常量名与这三个文件夹中的图片资源文件相同(不含扩展名),这三个文件夹中相同文件名的资源对应同一个整型变量,Android系统会根据不同类型的屏幕分辨率,自动选取合适的图片资源。
2. 静态类layout类对应res文件夹中的layout文件夹,layout文件夹中的每个布局文件在layyout类中都会有一个与文件名相同的整型静态变量。
3. 静态类string对应res/values文件夹中每个XML文件中的字符串资源,如上图中的strings.xml文件定义如下:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello"> Hello World, HelloWorld!</string>
<string name="app_name">HelloWorld</string>
</resources>
string类使用中每个静态常量名与<string>元素中name属性值相同。
四.扩展说明
1. 资源文件与清单文件AndroidManifest.xml
A. <application>元素中的android:icon属性会通过@drawable/icon的方式引用drawable资源文件夹中定义的icon.png图片作为Android桌面的启动图标; android:label会通过 @string/app_name的方式来引用values资源文件夹中XML文件中name属性值是app_name的<string>元素,并把<string>元素值作为Android桌面启动图标下方的应用程序名称。
B. <activity>元素中的android:label属性通过@string/app_name方式来引用name属性值是app_name的<string>元素值,作为Activity的标题。
2. res文件夹下的所有文件不要使用大写字母命名。
3. 不要试图修改R类中的内容,Android开发工具会自动生成会维护这个静态类
4. Activity创建时会调用setContentView()方法把布局设置到Activity中
5. drawable、layout、values文件中没有文件数量的限制,可以根据需要定义多个资源文件,其中在drawable和layout文件中每追加一个文件,在drawable和layout静态类中就会自动生成一个与文件名相同整型静态变量。在values文件夹中每追加一个XML文件,文件中<string>元素的name属性值都会在string静态类中对应一个与属性值相同的静态整型常量。
相关文章推荐
- Android触摸屏事件派发机制详解与源码分析
- Android短信备份案例
- NDK 开发实例
- android 屏幕适配之dp
- Android不同工程中的方法是否可以相互调用
- ANDROID_MARS学习笔记_S01原始版_021_MP3PLAYER001_下载mp3文件
- 命令行开发、编译、打包Android应用程序
- Android TouchEvent事件传递机制
- Android单元测试中insert数据入DB异常
- android 的onCreate 方法
- 自己个人总结,Android Studio 中SVN的使用步骤
- Android线程池(二)
- Android实现登录界面键盘不遮挡登录按钮
- Android中Handler的简析
- Android 使用PorterDuff实现刮刮卡效果
- android 电话状态的监听(来电和去电)
- Android开发笔记(六十五)多样的菜单
- Android 签名验证机制
- android studio Error:Cause: peer not authenticated的解决方案
- Android组件之间 数据传递数据