我试图为imageCarousel中的每个项目创建一个onClick侦听器 - 但是我无法为轮播中的每个对象创建一个唯一的侦听器。
目前 - 侦听器功能 - 但它适用于轮播中的所有项目 - 我尝试查找/使用每个项目的唯一ID失败。
for (int i = 0; i < titleResourcesTypedArray.length(); ++i) {
// Create new ImageView
imageItem = new ImageView(this);
// Set the shadow background
imageItem.setBackgroundResource(R.drawable.shadow);
// Set the image view resource
imageItem.setImageResource(titleResourcesTypedArray.getResourceId(
i, -1));
// Set the size of the image view to the previously computed value
imageItem.setLayoutParams(new LinearLayout.LayoutParams(imageWidth,
imageWidth));
//imageItem.setOnClickListener(this);
// Add image to the carousel
mCarouselContainer1.addView(imageItem);
imageItem.setOnClickListener(new View.OnClickListener() {
// create an onClick Listener
@Override
public void onClick(View v) {
// create an onClick Event (Start the Map Download)
Intent intent = new Intent(Home.this, Download.class);
startActivity(intent);
}
});
}
我相信我应该使用以下内容:
imageItem.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
titleResourcesTypedArray.getResources();
if (v.getId() = 7) {
Intent intent = new Intent(Home.this, Download.class);
startActivity(intent);
...
或者也许:
imageItem.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
titleResourcesTypedArray.getResources();
if (v.getResources() = 10) {
// Do Stuff
Intent intent = new Intent(Home.this, Download.class);
startActivity(intent);
}
}
}
如何正确识别旋转木马中每件物品的ID?
答案 0 :(得分:0)
除了与ID进行比较之外,还有另一种方法可以使用&#39;标记&#39;。您可以使用 setTag 方法在imageView上设置标记,然后在onClick方法中可以比较此标记。