我已动态地将 53 个图像添加到布局的 ImageView
中。我想为我添加的每个图像设置唯一的 id,并希望在单击图像时获取该 id。我已向我的 imageview 添加了一个标签 imageView.setTag(WirelessPin.arr_WirelessItems[i]);
但 onClick ProductURL = (String) imageView.getTag();
始终返回最后一张图片的标签,即第 53 号图片。我该如何解决此问题?
这是我的代码
for (int i = 0; i < WirelessPin.arr_WirelessItems.length; i++) {
url = new URL(WirelessPin.arr_WirelessItems[i].replaceAll("\\s+","%20"));
//ProductURL = WirelessPin.arr_WirelessItems[i];
Bitmap bmp = BitmapFactory.decodeStream(url
.openConnection().getInputStream());
LinearLayout layout = new LinearLayout(con);
layout.setLayoutParams(new LayoutParams(150, 110));
layout.setGravity(Gravity.CENTER);
imageView = new ImageView(con);
imageView.setLayoutParams(new LayoutParams(140, 84));
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setImageBitmap(bmp);
imageView.setTag(WirelessPin.arr_WirelessItems[i]);
imageView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//imageView.se
ProductURL = (String) imageView.getTag();
CollectDenominationsForWirelessPin obj = new CollectDenominationsForWirelessPin();
obj.WirelessPinDenominations(con, ProductURL, UserId);
}
});
layout.addView(imageView);
WirelessPin.sliderProducts.addView(layout);
}
最佳答案
在 OnClick 方法中,将代码更改为
ImageView iv = (ImageView)v;
ProductURL = (String) iv.getTag();
关于java - 如何设置和获取唯一的名称/标签来动态添加子android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21227908/