内容简介:
在Android中,将UI与业务分离,UI中的很多元素,就是资源。
1. 资源文件所在的目录:
Android的资源文件,都放在res目录下,这些资源文件包括:
animator: 属性动画
anim: 视图动画
color: 颜色
drawable: 图片,shape,Animation drawables,Nine-Patches
mipmap: 图片
layout: 布局文件
menu: 菜单文件
raw: 保留文件的原始格式 ,音视频,Resources.openRawResource()
values:包含字符串,颜色,风格,字体大小等的定义,例如:
arrays.xml
colors.xml
dimens.xml
strings.xml
styles.xml
xml:xml形式的配置文件
例如,一个典型的res目录如下:
└── res
├── drawable
├── drawable-v24
├── layout
│ ├── activity_base_top_bar.xml
│ ├── activity_browser.xml
│ ├── activity_crash_test.xml
│ ├── activity_main_url.xml
│ ├── activity_mymain.xml
│ ├── activity_network.xml
│ ├── activity_okhttp3_layout.xml
│ ├── activity_picasso_layout.xml
│ ├── activity_retrofit.xml
│ ├── activity_rxjava.xml
│ ├── activity_volley_layout.xml
│ ├── httplayout.xml
│ ├── httpurlconnection_layout.xml
│ └── sub_activity_main.xml
├── menu
│ └── menu_activity_base_top_bar.xml
├── mipmap-hdpi
│ ├── as.png
│ ├── back_whait.png
│ ├── ic_launcher.png
│ └── ic_launcher_round.png
├── mipmap-mdpi
├── mipmap-xhdpi
├── mipmap-xxhdpi
├── mipmap-xxxhdpi
└── values
├── colors.xml
├── dimens.xml
├── strings.xml
└── styles.xml
2.资源访问:
每个资源都有一个唯一的id,使用资源id,就可以访问到该资源。在程序编译后,资源文件都可以用R这个类来访问。例如,R.layout.activity_mymain,R.string.hello。
例如:在activity的onCreate中,用R.id.xxx来访问资源,代码如下:
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.activity_mymain);
Button btn = (Button) findViewById(R.id.button);
Button btn2 = (Button) findViewById(R.id.button2);
btn.setOnClickListener(clickListener);
btn2.setOnClickListener(clickListener_2);
}
说明:在Android Studio中,图片资源都放在mipmap相关目录下。