2012-09-30 93 views
0

有無這樣的代碼:我如何從ImageView中獲取圖像ID?

case R.id.button: 
int id=randImage(); 
imgView1.setImageResource(id); 
public int randImage() { 
Random rand= new Random(); 
int randomNumber=rand.nextInt(24)+1; 
String randomImage="img"+randomNumber; 
int id = getResources().getIdentifier(randomImage, "drawable", getPackageName()); 
return id; 

} 
case R.id.imgView1: 
Intent i= new Intent(); 
i.putExtra("imgId", id); //IS UNREACHABLE 

如何,我可以得到繪製ID設置後?

+0

也許你忘記了休息時間;第一例之後。此外,switch-case塊中的方法聲明是否在執行此操作後無效java語法 –

回答

1

不知道,如果你可以在設置後恢復它,但你可以與組件標籤關聯:

int id = randImage(); 
imgView1.setImageResource(id); 
imgView1.setTag(id); 

而當你需要得到的ID你只需:

int id = imgView1.getTag(); 
+0

你最好,thnx! – Kvazios

0

保存它首先:

int Id=randImage(); 
imgView1.setImageResource(Id); 
+0

? – Kvazios

+0

Id是資源的ID(相當於R.Drawable.imgxxxx的值) –

+0

是的,但在其他情況下,他是未定義的。 – Kvazios

相關問題