Android 应用资源(一)

来源:互联网 发布:mac文件存放在哪里 编辑:程序博客网 时间:2024/05/01 21:12

Android 应用资源想必大家都很熟悉了,这里我只讲一些细小的容易忽视的一些东西:
一. 应用资源概述
1.Android的应用资源可以分为两类:
(1)无法通过R资源反问的原生资源,保存在assets目录下。
代码获得方式:
AssetManger assetManger=getAssets();
InputStream is=assetManger.oprn(“xxxx”);

(2)通过R资源清单类,访问资源。保存在/res/目录下.
存放资源的目录分类(只讲,一些容易混淆的):
/res/animator:定义属性动画的xml文件
/res/anim:定义补间动画的xml文件
/res/raw/:存放任意的原生资源(比如:音频,视频等)。在android中,可通过getResources对象的 openRawResource(int id)来获取该资源的二进制流。当然,我们也可以把原生资源放在assets目录下。通过AssetManger 来访问这些资源。

3.对getResources的 理解:
首先:resource单词本身的意思就是资源。再者,在android中“Resources”就像一个资源访问管家,Resources提供了大量方法来根据资源清单ID获取实际资源。

4.android中对颜色值的理解
android中颜色值是通过红(Red),绿(Green),蓝(Blue)即一个透明色(Alpha)值来表示的,颜色值总是以“#”开头,格式如下:Alpha-Red-Green-Blue .Alpha可以省略(就是默认值),默认值表示的完全不透明。

RGB分别指定红绿蓝三原色的值(0~f这16级颜色)来表示颜色。
ARGB分别指定红绿蓝三原色的值(0~f这16级颜色)来表示颜色及透明度(0~f这16级颜色)来表示透明度。

RRGGBB分别指定红绿蓝三原色的值(00~ff这256级颜色)来表示颜色。
AARRGGBB分别指定红绿蓝三原色的值(00~ff这256级颜色)来表示颜色及透明度(00~ff这256级颜色)来表示透明度。

二. 数组资源:

这里写图片描述

这里面有太多属于了,自己可以看看,光看单词,就知道啥意思了,我这里就不多讲了。唯一想讲的一个就是:Resource下提供了一个通用的方法可以访问对应对是数组资源。(注:Android中TypeArray 多用于自定义属性,这块有空大家可以去看看)
TypeArray obtainTypeArray(int id);

例如:

这里写图片描述

public class MainActivity extends Activity {private TextView textView;private ListView listView;@Overrideprotected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    textView= (TextView) findViewById(R.id.textview);    listView= (ListView) findViewById(R.id.listview);    TypedArray typedArray=getResources().obtainTypedArray(R.array.test);    textView.setText(typedArray.getString(0));    ArrayAdapter adapter = new ArrayAdapter(this,android.R.layout.simple_list_item_1,            getResources().getStringArray(R.array.test));    listView.setAdapter(adapter);}

}

1 0