003.android资源文件剖析(Resources)
android的资源文件使用的重要性,不言而喻。让我们从潜到深逐渐来了解吧。
一:android的基本资源:
1.字符串资源
android的资源文件保存在:res\values\
2.布局资源
android的资源文件保存在:res\layout\
二:.资源引用的语法:@[package:]type/name
1.type对应于R.java中一种可用的资源类型命名空间,包括:
R.drawable; R.id; R.layout; R.string; R.attr; R.plural; R.array
2.xml资源引用语法中相应的类型为(type):
Drawable,id,layout,string,attr,plurals,string-array
资源引用:@[package:]type/name中的name部分是资源的名字。它在R.java中也被表示一个int行变量。
注意:如果未在语法中:“@[package:]type/name”指定任何包,那么type/name对将根据本地资源和应用程序的本地R.java包进行解析。
如果指定了android:type/name,将使用android来解析引用的ID,具体是通过android.R.java文件来完成的。
3.分析资源引用的语法:
android:id="@+id/main_tv_uname"
“android:id“只是向TextView分配ID的方式,
在语法="@+id/main_tv_uname”中+符号具有特殊的意义,他告诉android,ID text可能还不存在,如果确实是这样,则创建一个新ID并把它命名为="@+id/main_tv_uname”
4.定义资源id供以后使用
代码片段:在资源文件里面写一下语句:
<resources>
<item type="id" name="test"></item>
</resources>
使用方法:
<Button
android:id="@id/test"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/main_btn_login" />
三:Android关键资源
接下来我们认识一些关键资源,他们的XML表示,以及在java代码中使用他们的方式。
1.字符串资源
字符串资源一般有四种:普通字符串,引用字符串,可替换字符串,html字符串
1.1普通字符串
目录:res/values/string.xml(文件名字可以任意指定,但是最好看词达意)
<resources>
<string name="app_name">D03_Activity</string>
<string name="action_settings">Settings</string>
<string name="hello_world">Hello world!</string>
<string name="main_tv_username">用户名:</string>
<string name="main_tv_password">密码:</string>
<string name="main_btn_register">注册</string>
<string name="main_btn_login">登陆</string>
</resources>
使用:
android:text="@string/main_tv_username"
1.2html字符串
android支持xml元素,比如<b>,<i>等,以及string节点下其他简单的文本格式html。
举个例子:
<?xml version ="1.0" encoding="utf-8"?>
<resources>
<string name="main_tv_username"><b><i>用户名:</i></b></string>
</resources>
使用:
(1)在布局文件里使用时和普通字符串的使用方式一样。控件自动确定字符串是html字符串。
2.字符串数组
<Resources>
<string-array name="test_array">
<item>张三</item>
<item>赵四</item>
<item>王五</item>
</string-array>
</Resources>
使用:
String []a = getResources().getStringArray(R.array.test_array);
tView.setText(Arrays.toString(a));
3.复数资源(plurals)
<?xml version="1" encoding="utf-8"?>
<resources>
<plurals name="main_plurals">
<item quantity="one">is 1 apple</item>
<item quantity="other">are %d apples</item>
</plurals>
</resources>
使用:
String mePlurals = this.getResources().getQuantityString(R.plurals.main_plurals,1);
String mePluralsString = this.getResources().getQuantityString(R.plurals.main_plurals,3,2);
tView.setText( mePlurals+" "+mePluralsString);
注意:在英语中 quantity属性的值只有两种。one和other。
4.尺寸资源
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
</resources>
使用:
在java文件中使用:
float a = this.getResources().getDimension(R.dimen.aa);
在xml中的使用:
android:paddingBottom="@dimen/activity_vertical_margin"
5.图像资源
<ImageView
android:id="@+id/imageView4"
android:layout_width="0dip"
android:layout_weight="1"
android:layout_height="wrap_content"
android:src="@drawable/putong1" />
003.android资源文件剖析(Resources)的更多相关文章
- Android资源文件简介
Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, 资源 ...
- 【转】关于Android资源文件中出现百分号的问题
关于Android资源文件中出现百分号的问题 分类: Android JAVA2014-08-01 16:53 1345人阅读 评论(0) 收藏 举报 ANDROID格式化资源文件 目录(?)[+ ...
- ANDROID资源文件【转】
1. 资源包括:文本字符串.图像和图标.音频文件.视频和其他应用程序使用的组件. 2. 在Android工程中,Android资源文件是同Java类文件分开存储的,大多数常见的资源类型存储在XML ...
- 【Android 应用开发】Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组
. 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/19913755 . 一. Android资源文件简介 1 ...
- Android资源文件 - 使用资源存储字符串 颜色 尺寸 整型 布尔值 数组
一. Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, ...
- Android资源文件说明
一. Android资源文件简介 1. Android应用资源的作用 (1) Android项目中文件分类 在Android工程中, 文件主要分为下面几类 : 界面布局文件, Java src源文件, ...
- Android 资源文件命名与使用
[推荐]资源文件需带模块前缀 [推荐]layout 文件的命名方式 Activity 的 layout 以 module_activity 开头 Fragment 的 layout 以 module_ ...
- android 资源文件
系统文档:http://developer.android.com/guide/topics/resources/available-resources.html 1. 系统下资源文件夹的名字是固定的 ...
- [置顶] Android资源文件分析
1)修改开机默认壁纸 Android开机默认资源文件为:frameworks/base/core/res/res/values/config.xml 我们找到wallpaper行: <strin ...
随机推荐
- C++部分术语(Terms)
翻译自msdn,如有不妥当的地方,欢迎指正. 声明(Declaration):声明引入了一个名字以及其类型进入程序中,并没有定义一个相关的对象或者函数.然而,很多声明都作为定义使用. 定义(def ...
- Python 数据分析(一) 本实验将学习 pandas 基础,数据加载、存储与文件格式,数据规整化,绘图和可视化的知识
第1节 pandas 回顾 第2节 读写文本格式的数据 第3节 使用 HTML 和 Web API 第4节 使用数据库 第5节 合并数据集 第6节 重塑和轴向旋转 第7节 数据转换 第8节 字符串操作 ...
- PClady专访中国第一名媛、元媛舞会总裁周采茨女士【图】_摩登前沿 _奢品 _太平洋时尚网
PClady专访中国第一名媛.元媛舞会总裁周采茨女士[图]_摩登前沿 _奢品 _太平洋时尚网 PClady专访中国第一名媛.元媛舞会总裁周采茨女士
- Android智能手机屏蔽电话与屏蔽安装软件功能
近期做一些项目.须要对手机进行屏蔽自己的固有的功能.在此记录. Android屏蔽电话功能主要是卸载掉Phone.apk. 屏蔽安装软件功能主要是卸载掉PackageInstall.apk 以下以三星 ...
- 基于visual Studio2013解决C语言竞赛题之1019填数
题目 解决代码及点评 /* 19. 找3个数字,填在下面式子中,使等式成立. _6325 = 6325_ × ____ (等号左边是五位) 1,若答案有多个,则打印一组即 ...
- jquery mobile左右滑动切换页面
jquery mobile左右滑动切换页面 $(function() {$("body").bind('swiperight', function() { $.mobile.ch ...
- 解决java mail发送TXT附件被直接显示在正文中的问题
这两天遇到一个问题,关于使用java mail发送邮件的问题. 详细是这样子的:我使用java mail发送异常报告邮件,邮件中有一个包含异常日志的附件,和关于设备信息的邮件正文.假设日志为log后缀 ...
- axure制作圆形组件——axure制作技巧
Axure本身是没有直接提供圆形组件的,所以很多朋友在微博上问,如何使用axure制作圆形,难道都要找美工-- Axure没有提供圆形组件,但是它提供了一个万能组件--矩形组件,只要有矩形组件,我们就 ...
- 1.1.0-学习Opencv与MFC混合编程之---全屏截图,保存为BMP图像(并增加快捷键)
源代码:http://download.csdn.net/detail/nuptboyzhb/3961677 Ø 添加全屏截图菜单项,菜单项的属性如下; Ø 为该菜单项建立类向导. 编辑消息处理函 ...
- 北京出dell s2740显示器 1900 - V2EX
水木社区归档站 北京出dell s2740显示器 1900 - V2EX 北京出dell s2740显示器 1900 By kekex · 6 小时 6 分钟前 · 188 次点击 购于今年4月份 镜 ...