创建ImageView的阵列编程的Android
问题描述:
我有一个活动包含String
阵列,每个String
是drawable
图像名称,例如,如果我有所谓的“ABCD”,则String
阵列中的第一个值将是“ABCD”的图像。我试图将这个String
阵列传递给另一个活动,然后在那里显示所有图像。创建ImageView的阵列编程的Android
第一项活动:
Intent ip = new Intent(main3.this, main4.class);
ip.putExtra("p", usedcards1);
startActivity(ip);
次活动:
ImageView[] usedcardss;
RelativeLayout rel = (RelativeLayout) findViewById(R.id.main4con);
usedcardss = new ImageView[8];
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
for (int i = 0; i < usedcardss.length; i++)
usedcardss[i] = new ImageView(this);
Intent pp = this.getIntent();
String[] cards = pp.getStringArrayExtra("p");
for (int i = 0; i < 8; i++) {
int icon = getResources().getIdentifier(cards[i], "drawable", getPackageName());
usedcardss[i].setImageResource(icon);
usedcardss[i].setLayoutParams(lp);
rel.addView(usedcardss[i]);
}
创建一个新的活动,但它只是空白。为什么?
答
也许与您的问题没有直接关系,但您使用的是相对布局,即时消息在您的代码中没有看到设置图像布局参数的位置,这样会导致imageView重叠