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