我怎样才能检测屏幕上自来水? [英] How can i detect tap on the screen?

查看:245
本文介绍了我怎样才能检测屏幕上自来水?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

喜结果
更具体的我在哪里附加 OnGestureListener ,这样结果
我能察觉 onSingleTapUp 无处不在屏幕上,结果
即使ImageView的占用半个屏幕。

现在我有一个具有ImageView的活动监听器。结果
但是,当我点击的ImageView外监听器只火。

我看了一下,了解这一点,但不能得到它的权利。

这code是活性的影响。

 公共布尔onSingleTapUp(MotionEvent五){
    //addtext.setText(\"-+单一的水龙头UP+ - );
    //Log.d(TAG, - +单一的水龙头UP + - ********* *********);
    INT btnsize = buttonSave.getHeight();
    INT viewWidth = display.getWidth();
    INT viewHeight = display.getHeight();    //右侧SCREEN
    如果(e.getX()>(viewWidth * 0.7)){
        Log.d(TAG,右侧);
        如果(e.getY()> viewHeight * 0.7){
            Log.d(TAG,屏幕上的降权);
        }否则如果(e.getY()>(viewHeight * 0.45)){
            Log.d(TAG,屏幕上的右手中指);
        }
    }
    //左侧掩护
    如果(e.getX()≤(viewWidth * 0.3)){
        Log.d(TAG左侧的);
        如果(e.getY()> viewHeight * 0.7){
            Log.d(TAG,屏幕上的左手中指);
        }否则如果(e.getY()>(viewHeight * 0.45)){
            Log.d(TAG,在屏幕上左降);
        }
    }
    返回true;
}


解决方案

林回答我的问题。结果
由于上述的结果,@Jason
 我有注册 onTouchEvent 所有的意见。结果
篦作品

hi
More specific where do i attach OnGestureListener so that
i can detect onSingleTapUp everywhere on the screen,
even if an ImageView take up half the screen.

Now i have the Listener on the Activity that has an ImageView.
But the Listener only fire when i click outside the ImageView.

I read and try to understand this but cannot get it right.

this code is in the Activity.

 public boolean onSingleTapUp(MotionEvent e) {
    //addtext.setText("-" + "SINGLE TAP UP" + "-");
    //Log.d(TAG, "- + SINGLE TAP UP + - ***********************************************************************");  
    int btnsize = buttonSave.getHeight();
    int viewWidth = display.getWidth();
    int viewHeight = display.getHeight();

    // RIGHT SIDE SCREEN
    if(e.getX()> (viewWidth*0.7)){
        Log.d(TAG, "RIGHT SIDE");
        if(e.getY()> viewHeight*0.7){         
            Log.d(TAG, "right down on screen");
        }else if(e.getY()> (viewHeight*0.45)){ 
            Log.d(TAG, "right middle on screen   ");
        }
    }
    // LEFT SIDE SCREEN
    if(e.getX()< (viewWidth*0.3)){
        Log.d(TAG, "LEFT SIDE");
        if(e.getY()> viewHeight*0.7){ 
            Log.d(TAG, "Left middle on screen  ");
        }else if(e.getY()> (viewHeight*0.45)){
            Log.d(TAG, "Left down on screen ");
        }
    }
    return true;
}

解决方案

Im answering my own Question.
Thanks to the above @Jason
I have register the onTouchEvent to all views.
works grate.

这篇关于我怎样才能检测屏幕上自来水?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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