我正在尝试创建一个例程,将卡片图像分配给ImageView而不使用这样的东西:R.drawable.card_10clover。我更喜欢使用字符串,但我这样做的方式不起作用。
String imgRes = "R.drawable.card_";
int num = 10;
imgRes += "10";
String suit = "clover";
imgRes += "suit;
ImageView card = (ImageView) findViewById(R.id.imgcard);
card.setImageResource(imgRes);
不幸的是,setImageResource只接受一个int。请帮忙。
谢谢你, 杰克蓝
答案 0 :(得分:0)
使用getIdentifier(String name,String defType,String defPackage); 你的imgRes不需要前缀R.drawable
String imgRes = "card_";
int num = 10;
imgRes += "10";
String suit = "clover";
imgRes += "suit;
ImageView card = (ImageView) findViewById(R.id.imgcard);
int resourceId = getResource().getIdentifier (imgRes, "drawable", "com....");
card.setImageResource(resourceId);