简体   繁体   English

如何知道在java中单击了哪个视图?

[英]How to know which view was clicked in java?

Let's say that I have two ImageViews, and I want to know which one was clicked.假设我有两个 ImageView,我想知道点击了哪个。 How do I use getView() in this case?在这种情况下如何使用 getView()? It's should be something like that它应该是这样的

  @Override
    public boolean onSingleTapConfirmed(MotionEvent e) {

        checkViewId();

        switch(id){
        case 1:
        log.d -> ("id = 1");
        }
        break;

        case 2:
        log.d -> ("id = 2");
        break;

        return true;
    }

How should I create this checkViewId method?我应该如何创建这个 checkViewId 方法?

Make your activity/fragment implement the OnClickListener interface and add the onClick callback:使您的活动/片段实现OnClickListener接口并添加onClick回调:

public class MainActivity extends Activity implements View.OnClickListener {

 @Override
    public void onClick(View v) {

    }


}

When you're binding the views, set the listener for all of them:绑定视图时,为所有视图设置侦听器:

ImageView one = (ImageView) findViewById(R.id.one);
    one.setOnClickListener(this);
ImageView two = (ImageView) findViewById(R.id.two);
    two.setOnClickListener(this);

Inside the onClick method create your switch:onClick方法中创建您的开关:

switch (v.getId()) {

        case R.id.one:
            // add your code
            break;

        case R.id.two:
            // add your code
            break;

        default:
            break;
    }

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM