Java 在android studio中获取触摸坐标时出错
代码如下:Java 在android studio中获取触摸坐标时出错,java,android,Java,Android,代码如下: private static Point c; //c.set(1,1); -> error: "cannot resolve symbol set"?? . . . @Override public boolean onTouchEvent(MotionEvent event){ switch (event.getAction()){ case MotionEvent.ACTION_DOWN:
private static Point c;
//c.set(1,1); -> error: "cannot resolve symbol set"??
.
.
.
@Override
public boolean onTouchEvent(MotionEvent event){
switch (event.getAction()){
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_MOVE:
c.set((int)event.getX(),(int)event.getY());
}
return true;
}
当我触摸屏幕上的任何地方时,应用程序崩溃,我得到以下错误:
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.graphics.Point.set(int, int)' on a null object reference
点c
为空,因为您尚未初始化它。要初始化它,您应该编写
c = new Point(); // before setting coordinates to c
这使得类的新对象成为
点
在哪里初始化了c?如何初始化点?使用c=new Point()
beforec.set((int)event.getX(),(int)event.getY())
或者只新建点((int)event.getX(),(int)event.getY())
,也许您应该将点存储在列表中