吐司声明中的不兼容类型错误

问题描述:

即时尝试创建一个消息,显示坐标取决于用户在屏幕上单击的位置。当我声明'mContext = this'时,我得到一个错误:需要不兼容的类型:上下文。吐司声明中的不兼容类型错误

@覆盖 公共布尔的onTouchEvent(MotionEvent事件) { // motionevent从用户 浮子X检测运动; x = event.getX(); float y; y = event.getY(); 上下文mContext; 开关(event.getAction()){ 情况 MotionEvent.ACTION_UP:

// touch_up(X,Y);

mContext = this;

  float Cox = event.getRawX(); 
      float Coy = event.getRawY(); 
      String text = "You clicked at x = " + Cox+ "and y =" + Coy; 
      //AlertDialog.Builder builder = new AlertDialog.Builder(); 
      Toast.makeText(mContext, text, Toast.LENGTH_SHORT).show(); 
      //toast.show(); 
      invalidate(); 
      break; 
     } 
     return true; 

    } 

这是在一个Activity或Fragment中吗? this将在Activity中工作,但是在Fragment中,您需要调用主机Activity的上下文。

类似于: mContext = getActivity(); Toast.makeText(mContext, text, Toast.LENGTH_SHORT).show();