ImageView中src图像的ID

时间:2015-02-20 14:00:17

标签: android

基本上我正在开发类似游戏的应用程序,我有20个图像,其中一个将被设置为图像“src”。我想知道是否可以在ImageView内获取图像的ID?但不是ImageView的Id。因为当我使用Click Listener时它会给我

的id
//your idea of imageView.setTag() and view.getTag() is better but Now i want     to do this in the loop. Is it possible?    
int id1 = R.drawable.img1;    
imageView1.setTag(id1);    
int id2 = R.drawable.img2    
imageView2.setTag(id2);    
// and similarly for 20 ImageView    

1 个答案:

答案 0 :(得分:1)

您可以使用setTag()和getTag在视图中添加和获取引用。

设置参考 获取所有图片ID& imageviewids id在数组循环中如下

    int imageid[] = new int[] { R.drawable.imageView1, R.drawable.imageView2,... };
    int imageviewid[] = new int[]{R.id.imageView1, R.id.imageView2,...}; 
    for(int i=0;i<imageid.length;i++){
    ImageView imageView =(ImageView)findViewById(imageviewid[i]);
    imageView.setTag(imageid[i]);
    imageView.setImageResource(imageid[i]);
    }

获取参考

public void onClick(View v) { 
    String clickedItem =(String) v.getTag(); 
}

编辑:在Xml上设置标记

<ImageView android:id="@+id/imageView2" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content"
android:tag="ImageView2"
android:layout_alignParentRight="true" 
android:layout_below="@+id/imageView1" 
android:layout_marginRight="10dp" 
android:src="@drawable/img2" />