其他分享
首页 > 其他分享> > android – 我如何同时获得OnClick和OnTouch监听器

android – 我如何同时获得OnClick和OnTouch监听器

作者:互联网

我可以为ImageView实现针对OnClick和OnTouch侦听器的不同操作.我已经在stackoverflow中引用了几个链接但是无法实现我的目标.
我怎么能实现这个.我已经提到了

how to use both Ontouch and Onclick for an ImageButton?

Android onTouch with onClick and onLongClick

Can’t handle both click and touch events simultaneously

OnTouch/OnClick listeners. Use both?

实际上我的上下文是当我点击imageview时它将转到其他活动,当我刷它时它必须被用户喜欢.
任何帮助.

解决方法:

@Override
    public boolean onTouch(View v, MotionEvent event) {

        System.out.println("ajay +event.getAction()" + event.getAction());
        switch (event.getAction()) {
            case MotionEvent.ACTION_MOVE:
                layOutParams.x = initialX + (int) (event.getRawX() - initialTouchX);
                layOutParams.y = initialY + (int) (event.getRawY() - initialTouchY);

                break;
            case MotionEvent.ACTION_DOWN:
                initialX = layOutParams.x;
                initialY = layOutParams.y;
                initialTouchX = event.getRawX();
                initialTouchY = event.getRawY();
                if (initialTouchX == event.getRawX() && initialTouchY == event.getRawY()) {
                    return false;// to handle Click
                }
                break;
            case MotionEvent.ACTION_UP:
                if (initialTouchX == event.getRawX() && initialTouchY == event.getRawY()) {
                    return false;// to handle Click
                }
                break;

        }
        return true;

    }
};    

onClick实现

overLayview.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            System.out.println("ajay onClick Lisner");
        }
    });

标签:android,ontouchlistener,android-imageview,onclicklistener
来源: https://codeday.me/bug/20191007/1867761.html