这是我的java代码 我想将所有图像存储在drawable文件夹中并通过recyclerview访问它,所以我创建了一个数组列表,但它显示错误','
是getImages会返回图片
public static int[] getImages() {
int[] images =
{R.drawable.1,
R.drawable.2,
R.drawable.3,
R.drawable.4,
R.drawable.5,
R.drawable.6,
R.drawable.7,
R.drawable.8,
R.drawable.9,
R.drawable.10,
R.drawable.11};
return images;
}
答案 0 :(得分:2)
resource_name不能以数字开头。
尝试使用:
R.drawable._1 or R.drawable.img1
而不是
R.drawable.1
并相应地重命名图像。
答案 1 :(得分:2)
Android为每个资源文件生成R.java中的常量 - 类。文件名定义常量字段的名称。字段和变量名称不能以数字开头:
变量名称区分大小写。变量的名称可以是任何合法的标识符 - 无限长度的Unicode字母和数字序列,以字母开头,美元符号" $"或下划线字符" _"
答案 2 :(得分:1)
您在
中使用了一个类型化数组您的/ res文件夹中的arrays.xml
文件如下所示:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<array name="images">
<item>@drawable/image1</item>
<item>@drawable/image2</item>
<item>@drawable/image3</item>
</array>
</resources>
以这种方式从您的活动中获取数组:
Resources res = getResources();
TypedArray images= res.obtainTypedArray(R.array.images);
Drawable drawable = images.getDrawable(0);
或强>
TypedArray images = getResources().obtainTypedArray(R.array.images);
// get resource ID by index
images .getResourceId(i, -1)
// or set you ImageView's resource to the id
mImgView1.setImageResource(images.getResourceId(i, -1));
// recycle the array
images.recycle();