如何在Android中使用xml的资源数组?

我是Android开发新手,面临着管理Android资源的问题。我想创建一个包含ImageView和TextView的listView

下面是我的实现,它工作得很好,但实际上我想使用我以前创建的数组,如下所示:

int[]img=getResources().getIntArray(R.Array.img);
package com.simplelistviewwithlistactivity;
导入android.app.AlertDialog;
导入android.app.AlertDialog.Builder;
导入android.app.ListActivity;
导入android.os.Bundle;
导入android.view.Menu;
导入android.view.view;
导入android.widget.ListView;
公共类ListActivity扩展了ListActivity{
int[]img={R.drawable.r1,R.drawable.r2,R.drawable.skycubemap1,
R.drawable.skycubemap1,R.drawable.skycubemap2,
R.drawable.skycubemap3,R.drawable.skycubemap4,
R.drawable.skycubemap5};
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
getListView().setDividerHeight(2);
getListView().setAdapter(新的BindDataAdapter(this,img,item));
}
@凌驾
受保护的void onListItemClick(列表视图l、视图v、整数位置、长id){
super.onListItemClick(左、右、位置、id);
Builder Builder=新建AlertDialog.Builder(此);
setMessage(单击项[position]+“);
builder.setPositiveButton(“确定”,null);
builder.show();
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
getMenuInflater().充气(R.menu.activity\u列表,菜单);
返回true;
}
私有字符串项[]={“这是列表项1”,“这是列表项2”,
“这是列表项3”、“这是列表项4”、“这是列表项5”,
“这是列表项6”,“这是列表项8”,“这是列表项8”

创建一个如下所示的XML,并将其放入res/values/arrays.XML中

xml version=“1.0”encoding=“utf-8”>
<资源>
<array name=“icons”>
<item>@drawable/home</item>
<item>@可绘制/设置</item>
<item>@可提取/注销</item>
</array>
<array name=“colors”>
<item>#FFFF0000</item>
<项目>#FF00FF00</item>
<项目>#FF0000FF</item>
</array>
</resources>

然后使用如下代码:

Resources res=getResources();
TypedArray图标=res.obtainTypedArray(R.array.icons);
Drawable Drawable=图标。getDrawable(0);
TypedArray颜色=res.obtainTypedArray(R.array.colors);
int color=colors.getColor(0,0);

资料来源:http://developer.android.com/guide/topics/resources/more-resources.html

发表评论