0
对不起,标题不好,但。我想要达到的是这个。使用变量获取资源字段
private void updateImage(int number) {
imageView.setImageResource(R.drawable.img0);
}
..where在IMG0 0实际上是参数数。
JavaScript的方法是R.drawable['img' + number]
对不起,标题不好,但。我想要达到的是这个。使用变量获取资源字段
private void updateImage(int number) {
imageView.setImageResource(R.drawable.img0);
}
..where在IMG0 0实际上是参数数。
JavaScript的方法是R.drawable['img' + number]
没有道理的方法可以是简单的使用整数数组。把所有的resourceId放在一个数组中,只需通过索引来调用数组元素。
int[] resIds = new int[] {
R.drawable.img0,
R.drawable.img1,
R.drawable.img2,
R.drawable.img3
}
private void updateImage(int number) {
imageView.setImageResource(resIds[number]);
}
尝试思考
for(Field field : R.drawable.getClass().getFields()) {
if(field.getName().equals("img" + number)) {
imageView.setImageResource(field.get(R.drawable));
}
}
'非静态方法的getClass()不能从一个静态context'引用 – joakim