我怎样才能同时获得的OnClick和OnTouch监听器 [英] How can i get both OnClick and OnTouch Listeners

查看:313
本文介绍了我怎样才能同时获得的OnClick和OnTouch监听器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是在一个位置,以实施的OnClick OnTouch 监听器的 ImageView的。我已经提到的计算器几个环节,但不能达到我的目标。 我怎么能实现this.I've简称

<一个href="http://stackoverflow.com/questions/19538747/how-to-use-both-ontouch-and-onclick-for-an-imagebutton">how同时使用Ontouch和的onClick一个ImageButton的?

<一个href="http://stackoverflow.com/questions/7387572/android-ontouch-with-onclick-and-onlongclick">Android onTouch用的onClick和onLongClick

<一个href="http://stackoverflow.com/questions/5159366/cant-handle-both-click-and-touch-events-simultaneously">Can't同时处理点击和触摸事件同时

OnTouch /的OnClick听众。同时使用?

其实我的背景是,当我点击的ImageView它会转到其他活动,当我刷上它到喜欢的用户。 任何帮助。

解决方案

  @覆盖
    公共布尔onTouch(视图V,MotionEvent事件){

        的System.out.println(阿贾伊+ event.getAction()+ event.getAction());
        开关(event.getAction()){
            案例MotionEvent.ACTION_MOVE:
                layOutParams.x = initialX +(int)的(event.getRawX() -  initialTouchX);
                layOutParams.y = initialY +(int)的(event.getRawY() -  initialTouchY);

                打破;
            案例MotionEvent.ACTION_DOWN:
                initialX = layOutParams.x;
                initialY = layOutParams.y;
                initialTouchX = event.getRawX();
                initialTouchY = event.getRawY();
                如果(initialTouchX == event.getRawX()&安培;&安培; initialTouchY == event.getRawY()){
                    返回false; //处理点击
                }
                打破;
            案例MotionEvent.ACTION_UP:
                如果(initialTouchX == event.getRawX()&安培;&安培; initialTouchY == event.getRawY()){
                    返回false; //处理点击
                }
                打破;

        }
        返回true;

    }
};
 

的onClick实行

  overLayview.setOnClickListener(新OnClickListener(){

        @覆盖
        公共无效的onClick(视图v){
            // TODO自动生成方法存根
            的System.out.println(阿杰的onClick Lisner);
        }
    });
 

I am in a position to implement different actions for OnClick and OnTouch listeners for an ImageView.I have referred several links in stackoverflow but couldn't achieve my goal. how can I implement this.I've referred

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?

actually my context was when i click on imageview it will goto other activity and when i swipe on it it has to liked by the user. any help.

解决方案

@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 Implemenation

overLayview.setOnClickListener(new OnClickListener() {

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

这篇关于我怎样才能同时获得的OnClick和OnTouch监听器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆