大家好,最近学习android写个程序,遇到问题:
activity中有ontouch监听程序,触摸屏幕会读取坐标值。当坐标值满足要求时弹出一个对话框ok 或 ng,但是点击确定的时候无响应。对话框使用new AlertDialog.Builder(Content())
            .setCancelable(true)
            .setTitle("确认")  
            .setMessage("确定吗?")  
            .setPositiveButton("是",new    android.content.DialogInterface.OnClickListener() { 
                public void onClick(DialogInterface dialog, int whichButton) { 
                    //取消按钮事件 
                    } 
                    }) activity使用public boolean onTouchEvent(MotionEvent event)读取坐标感觉是弹出的按键识别和读取坐标冲突了。求解决办法。还是对话框用另外方法写?谢谢啦。大家共同学习android ontouch

解决方案 »

  1.   

    在有弹出框的情况下,不要再读取坐标了,或者读到是确定按键的范围,就返回false,这样弹出框才会处理onClick事件吧。不然onClick事件被onTouchEvent拦截了。
      

  2.   

    on onTouchEvent  返回 super.onTouchEvent(evt)。你的返回值是不是为true
      

  3.   

    @Override
    public boolean onTouchEvent(MotionEvent event) {
    // TODO Auto-generated method stub
    if (b)
    return true;
    if (!b && event.getX() > 80) {
    b = true;
    new AlertDialog.Builder(this)
    .setCancelable(true)
    .setTitle("12121")
    .setPositiveButton("" + event.getX(),
    new OnClickListener() {

    @Override
    public void onClick(DialogInterface dialog,
    int which) {
    // TODO Auto-generated method stub
    b = false;
    }
    }).show(); } return super.onTouchEvent(event) ;
    }
      

  4.   

    boolean b = false;
    忘记这个了