经过之前对android工程的目录结构的简单介绍,可以知道android开发中,我们离不开对资源文件的使用,例如利用图片资源可以设置app图标或者在界面中显示一张图片等。对于这些资源,我们可以直接调用android系统自带的资源,也可以引用当前工程下res目录中保存的资源。
常用的资源类型大致有:
drawable位图文件
layout用户界面的布局文件
menu定义菜单的资源文件
strings字符串资源
colors颜色值资源
dimens像素值资源
styles样式资源
除drawable目录下保存.png、.jpg、.gif等位图文件外,其余的资源文件都为XML格式。
资源文件的使用
资源文件的使用有两种形式:
1.在XML文件中引用资源
2.通过Java代码动态引用资源
1. 在XML文件中引用资源
示例:在layout.xml布局文件中设置界面的背景图片或背景颜色
android:background="@drawable/ic_launcher"
android:background="@color/red"
说明:colors.xml默认不存在,需要我们创建Android XML File,然后添加name属性为”red”的资源
引用资源格式为 “@资源类型/资源名称”
如果需要引用系统资源,格式为“@android:资源类名/资源名称”,例如:
android:background="@android:color/background_dark"
2. 通过Java代码动态引用资源
在XML文件中引用资源属于静态引用,编译后就无法改变。通过Java代码引用资源可以动态的设置或修改资源样式。
示例:修改Button的文本内容和文本颜色
Resources r = getResources();
String str = r.getString(android.R.string.cancel);
Drawable draw = r.getDrawable(R.drawable.ic_launcher);
btn.setText(str);
btn.setBackground(draw);
小结
使用Android应用资源,可以把字符串、图片、颜色、界面布局等交给XML文件配置管理,这样避免了在Java代码中以硬编码的方式直接定义这些内容,是一种非常优秀、高耦合的设计。
热点新闻