创建ImageView的阵列编程的Android

问题描述:

我有一个活动包含String阵列,每个Stringdrawable图像名称,例如,如果我有所谓的“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重叠