在我的应用程序中,我以编程方式创建了一个图像视图。我动态创建了相同类型的10幅图像。每当我点击图像时,我想将图像更改为另一图像,如果再次按下图像,它将转向上一图像。我为此写了代码。但是每当我点击特定图像时,更改就会应用于其他图像。如何将一个图像更改为另一个图像?
im = new ImageView(this);
@Override
public void onClick(View v) {
boolean flag = true;
for (int k=0;k<sheetdetails.size();k++){
if(sheetdetails.get(k).get("SeatNo").equalsIgnoreCase(v.getTag().toString())&&sheetdetails.get(k).get("IsAvailable").equalsIgnoreCase("true")){
if(flag)
{
im.setImageResource(R.drawable.seat);
flag=false;
}
else
{
im.setImageResource(R.drawable.selectedseat);
flag=true;
}
}
}
}
我没有看到任何你设置为不同的图像。你可以请澄清你的设置 – Shiv
以前它是座位图像后,点击它将改变到选定的座位,反之亦然(设置与标志) –
您设置标志为真**每次点击**。所以,它总是**真**。更好地将该指令移到外面。除此之外(假设你在xml布局中设置了onClick()),你只声明** 1 ImageView **,而不是10.并且你不区分哪个**被点击过。 –