如何处理 ImageView 上的触摸事件

How to handle touch event on a ImageView

我有三张图片。当我第一次触摸时,显示第一个图像,当我第二次触摸时,显示第二个图像,然后当我第三次触摸时,显示第三个图像。毕竟,当我第四次触摸时,我想显示第一个图像 return 等等。

谁能告诉我如何处理或触摸 android 的 ImageView?

how to handle click on an ImageView

您可以简单地为您的 ImageView 设置一个 View.OnClickListener:

imageView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            // do stuff
        }
    });

下面应该满足您的需要:

public class MainActivity extends Activity {
ImageView image;
int i=1;
    @Override

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        image = (ImageView) findViewById(R.id.imageViewName);      
        setButtonOnClickListeners();       
            }
        }
        image.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
                if (i==1){
                image.setImageResource(R.drawable.image1);
                i++;
                }
                else if(i==2){
                    image.setImageResource(R.drawable.image2);
                    i++;
                }
                else if(i==3){
                    image.setImageResource(R.drawable.image3);
                    i++;
                }
                else if(i==4){
                    image.setImageResource(R.drawable.image4);
                    i=1;
                }
        }
    });

我没有测试过,但是这个想法是正确的。当您单击图像时,它会根据 i 的值更改可绘制对象。当您获得图像 1 时,i 将等于 1。Onclick 将增加 i 直到 i==4,它将根据您的请求重置为 1。

while 循环可能更整洁,但这是我想到的最快的解决方案。