package com.example.test1;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.LinearLayout.LayoutParams;
import android.widget.Toast;
public class MainActivity extends Activity {
Button button_1;
private Circle circle;
LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT,1000);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button_1 = (Button) findViewById(R.id.button_1);
button_1.setOnClickListener( new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
final String[] items = {"圆","2","3","4","5","6","7","8","9","0"};
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setTitle("选择序号");
builder.setItems(items,new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int index) {
// TODO Auto-generated method stub
switch(index){
case 0:
circle = new Circle(getApplicationContext());
Toast.makeText(MainActivity.this,"圆",Toast.LENGTH_LONG).show();
addContentView(circle,params);
break;
case 1:
Toast.makeText(MainActivity.this,"click 2", Toast.LENGTH_LONG).show();
break;
case 2:
Toast.makeText(MainActivity.this,"click 3",Toast.LENGTH_LONG).show();
break;
case 3:
Toast.makeText(MainActivity.this,"click 4",Toast.LENGTH_LONG).show();
break;
case 4:
Toast.makeText(MainActivity.this,"click 5",Toast.LENGTH_LONG).show();
break;
case 5:
Toast.makeText(MainActivity.this,"click 6",Toast.LENGTH_LONG).show();
break;
case 6:
Toast.makeText(MainActivity.this,"click 7",Toast.LENGTH_LONG).show();
break;
case 7:
Toast.makeText(MainActivity.this,"click 8",Toast.LENGTH_LONG).show();
break;
case 8:
Toast.makeText(MainActivity.this,"click 9",Toast.LENGTH_LONG).show();
break;
case 9:
Toast.makeText(MainActivity.this,"click 0",Toast.LENGTH_LONG).show();
break;
}
}
});
builder.create().show();
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
}
package com.example.test1;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Point;
import android.graphics.Paint.Style;
import android.view.View;
public class MyLayout extends View {
public Point uppoint,downpoint,movepoint;
public Paint paint;
public Canvas canvas;
public Bitmap bitmap;
public int flag;
public MyLayout(Context context) {
super(context);
// TODO Auto-generated constructor stub
paint = new Paint(Paint.DITHER_FLAG);
bitmap = Bitmap.createBitmap(1000,2000,Bitmap.Config.ARGB_8888);
canvas = new Canvas(bitmap);
paint.setStyle(Style.STROKE);//非填充
paint.setStrokeWidth(4);
paint.setColor(Color.BLACK);
paint.setAntiAlias(true);
}
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
canvas.drawBitmap(bitmap,0,0,null);
}
}
package com.example.test1;
import android.content.Context;
import android.graphics.*;
import android.util.Log;
import android.view.MotionEvent;
import android.widget.Toast;
public class Circle extends MyLayout {
public Point rpoint;
public int radius;
public double distance;
public Circle(Context context) {
super(context);
// TODO Auto-generated constructor stub
rpoint = new Point();
}
@Override
public boolean onTouchEvent(MotionEvent event) {
// TODO Auto-generated method stub
switch(event.getAction()){
case MotionEvent.ACTION_DOWN:
downpoint.set((int)event.getX(),(int)event.getY());
if(radius!=0){
distance = Math.sqrt((downpoint.x - rpoint.x)*(downpoint.x - rpoint.x)+(downpoint.y - rpoint.y)*(downpoint.y - rpoint.y));
// Toast.makeText(Circle.this,"distance",Toast.LENGTH_LONG).show();
Log.i("distance::::::::::::::::::::::",String.valueOf(distance));
if(distance >= radius - 20 ||distance <= radius + 20){
Log.e("circle::::","error");
flag = 1;//yuanshang
}
if(distance < radius){
Log.e("circle::::","2e2r2r2o2r2");
//yuannei
flag = -1;
}
if(distance > radius){
Log.e("circle::::","3e3r3r3o3r3");
//yuanwai
flag = 0;
}
else{
Log.e("circle::::","4e4r4r4o4r4");
flag = 0;
}
}
break;
case MotionEvent.ACTION_MOVE:
movepoint.set((int)event.getX(),(int)event.getY());
switch(flag){
case 1:
Log.i("circle::::-------","1");
radius = (int)Math.sqrt((movepoint.x - rpoint.x)*(movepoint.x - rpoint.x)+(movepoint.y - rpoint.y)*(movepoint.y - rpoint.y));
break;
case -1:
Log.i("circle::::-------","2");
rpoint.x = movepoint.x;
rpoint.y = movepoint.y;
break;
default:
Log.i("circle::::-------","3");
rpoint.set(downpoint.x, downpoint.y);
radius = (int)Math.sqrt((movepoint.x - rpoint.x)*(movepoint.x - rpoint.x)+(movepoint.y - rpoint.y)*(movepoint.y - rpoint.y));
break;
}
}
return true;
}
}
各位大神,我这个东西发布上去选定圆,然后触摸拖动的时候就崩溃了,求大神帮忙看看
distance = Math.sqrt((downpoint.x - rpoint.x)*(downpoint.x - rpoint.x)+(downpoint.y - rpoint.y)*(downpoint.y - rpoint.y));
问题出在这一句, 因为你的rpoint只是在circle的构造中new出来, 但没有初始化, 这时候rpoint为null, 你在去点击屏幕, 进入DOWN事件, 程序
运行到上面一句时, 去计算两点间距离使用rpoint的值出现问题, 因为此时rpoint为null. 报出空指针异常的问题. 解决方法就是给rpoint赋一个初始值.
ps: 用不着log贴两遍
看报错信息,log日志怎么说
05-27 11:33:14.071: I/Timeline(15093): Timeline: Activity_idle id: android.os.BinderProxy@431b1828 time:18290525
05-27 11:33:16.771: E/InputEventReceiver(15093): Exception dispatching input event.
05-27 11:33:16.771: E/MessageQueue-JNI(15093): Exception in MessageQueue callback: handleReceiveCallback
05-27 11:33:16.801: E/MessageQueue-JNI(15093): java.lang.NullPointerException
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at com.example.test1.Circle.onTouchEvent(Circle.java:23)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.View.dispatchTouchEvent(View.java:7706)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2227)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1917)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2227)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1917)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2227)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1917)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2118)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1521)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.app.Activity.dispatchTouchEvent(Activity.java:2563)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2044)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.View.dispatchPointerEvent(View.java:7886)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4045)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:3887)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3419)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3485)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3454)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3561)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3462)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3618)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3419)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3485)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3454)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3462)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3419)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5636)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5616)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:5587)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:5725)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:195)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.os.MessageQueue.nativePollOnce(Native Method)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.os.MessageQueue.next(MessageQueue.java:138)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.os.Looper.loop(Looper.java:123)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.app.ActivityThread.main(ActivityThread.java:5120)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at java.lang.reflect.Method.invokeNative(Native Method)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at java.lang.reflect.Method.invoke(Method.java:515)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:818)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:634)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at dalvik.system.NativeStart.main(Native Method)
05-27 11:33:16.801: D/AndroidRuntime(15093): Shutting down VM
05-27 11:33:16.801: W/dalvikvm(15093): threadid=1: thread exiting with uncaught exception (group=0x4174fd58)
05-27 11:33:16.811: E/AndroidRuntime(15093): FATAL EXCEPTION: main
05-27 11:33:16.811: E/AndroidRuntime(15093): Process: com.example.test1, PID: 15093
05-27 11:33:16.811: E/AndroidRuntime(15093): java.lang.NullPointerException
05-27 11:33:16.811: E/AndroidRuntime(15093): at com.example.test1.Circle.onTouchEvent(Circle.java:23)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.View.dispatchTouchEvent(View.java:7706)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2227)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1917)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2227)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1917)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2227)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1917)
05-27 11:33:16.811: E/AndroidRuntime(15093): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2118)
05-27 11:33:16.811: E/AndroidRuntime(15093): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1521)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.app.Activity.dispatchTouchEvent(Activity.java:2563)
05-27 11:33:16.811: E/AndroidRuntime(15093): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2044)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.View.dispatchPointerEvent(View.java:7886)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4045)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:3887)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3419)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3485)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3454)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3561)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3462)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3618)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3419)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3485)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3454)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3462)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3419)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5636)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5616)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:5587)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:5725)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:195)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.os.MessageQueue.nativePollOnce(Native Method)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.os.MessageQueue.next(MessageQueue.java:138)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.os.Looper.loop(Looper.java:123)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.app.ActivityThread.main(ActivityThread.java:5120)
05-27 11:33:16.811: E/AndroidRuntime(15093): at java.lang.reflect.Method.invokeNative(Native Method)
05-27 11:33:16.811: E/AndroidRuntime(15093): at java.lang.reflect.Method.invoke(Method.java:515)
05-27 11:33:16.811: E/AndroidRuntime(15093): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:818)
05-27 11:33:16.811: E/AndroidRuntime(15093): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:634)
05-27 11:33:16.811: E/AndroidRuntime(15093): at dalvik.system.NativeStart.main(Native Method)
05-27 11:33:59.901: W/Process(15093): killProcess [15093]
05-27 11:33:59.901: W/System.err(15093): java.lang.Throwable
05-27 11:33:59.901: W/System.err(15093): at android.os.Process.killProcess(Process.java:972)
05-27 11:33:59.901: W/System.err(15093): at com.android.internal.os.RuntimeInit$UncaughtHandler.uncaughtException(RuntimeInit.java:94)
05-27 11:33:59.901: W/System.err(15093): at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693)
05-27 11:33:59.901: W/System.err(15093): at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690)
05-27 11:33:59.901: W/System.err(15093): at dalvik.system.NativeStart.main(Native Method)
05-27 11:33:59.901: I/Process(15093): Sending signal. PID: 15093 SIG: 9
@poorguy_
05-27 11:33:14.071: I/Timeline(15093): Timeline: Activity_idle id: android.os.BinderProxy@431b1828 time:18290525
05-27 11:33:16.771: E/InputEventReceiver(15093): Exception dispatching input event.
05-27 11:33:16.771: E/MessageQueue-JNI(15093): Exception in MessageQueue callback: handleReceiveCallback
05-27 11:33:16.801: E/MessageQueue-JNI(15093): java.lang.NullPointerException
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at com.example.test1.Circle.onTouchEvent(Circle.java:23)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.View.dispatchTouchEvent(View.java:7706)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2227)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1917)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2227)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1917)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2227)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1917)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2118)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1521)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.app.Activity.dispatchTouchEvent(Activity.java:2563)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2044)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.View.dispatchPointerEvent(View.java:7886)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4045)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:3887)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3419)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3485)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3454)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3561)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3462)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3618)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3419)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3485)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3454)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3462)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3419)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5636)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5616)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:5587)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:5725)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:195)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.os.MessageQueue.nativePollOnce(Native Method)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.os.MessageQueue.next(MessageQueue.java:138)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.os.Looper.loop(Looper.java:123)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at android.app.ActivityThread.main(ActivityThread.java:5120)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at java.lang.reflect.Method.invokeNative(Native Method)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at java.lang.reflect.Method.invoke(Method.java:515)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:818)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:634)
05-27 11:33:16.801: E/MessageQueue-JNI(15093): at dalvik.system.NativeStart.main(Native Method)
05-27 11:33:16.801: D/AndroidRuntime(15093): Shutting down VM
05-27 11:33:16.801: W/dalvikvm(15093): threadid=1: thread exiting with uncaught exception (group=0x4174fd58)
05-27 11:33:16.811: E/AndroidRuntime(15093): FATAL EXCEPTION: main
05-27 11:33:16.811: E/AndroidRuntime(15093): Process: com.example.test1, PID: 15093
05-27 11:33:16.811: E/AndroidRuntime(15093): java.lang.NullPointerException
05-27 11:33:16.811: E/AndroidRuntime(15093): at com.example.test1.Circle.onTouchEvent(Circle.java:23)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.View.dispatchTouchEvent(View.java:7706)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2227)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1917)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2227)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1917)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2227)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:1917)
05-27 11:33:16.811: E/AndroidRuntime(15093): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:2118)
05-27 11:33:16.811: E/AndroidRuntime(15093): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1521)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.app.Activity.dispatchTouchEvent(Activity.java:2563)
05-27 11:33:16.811: E/AndroidRuntime(15093): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:2044)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.View.dispatchPointerEvent(View.java:7886)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4045)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:3887)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3419)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3485)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3454)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:3561)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3462)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:3618)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3419)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3485)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3454)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3462)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3419)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:5636)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:5616)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:5587)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:5725)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:195)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.os.MessageQueue.nativePollOnce(Native Method)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.os.MessageQueue.next(MessageQueue.java:138)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.os.Looper.loop(Looper.java:123)
05-27 11:33:16.811: E/AndroidRuntime(15093): at android.app.ActivityThread.main(ActivityThread.java:5120)
05-27 11:33:16.811: E/AndroidRuntime(15093): at java.lang.reflect.Method.invokeNative(Native Method)
05-27 11:33:16.811: E/AndroidRuntime(15093): at java.lang.reflect.Method.invoke(Method.java:515)
05-27 11:33:16.811: E/AndroidRuntime(15093): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:818)
05-27 11:33:16.811: E/AndroidRuntime(15093): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:634)
05-27 11:33:16.811: E/AndroidRuntime(15093): at dalvik.system.NativeStart.main(Native Method)
05-27 11:33:59.901: W/Process(15093): killProcess [15093]
05-27 11:33:59.901: W/System.err(15093): java.lang.Throwable
05-27 11:33:59.901: W/System.err(15093): at android.os.Process.killProcess(Process.java:972)
05-27 11:33:59.901: W/System.err(15093): at com.android.internal.os.RuntimeInit$UncaughtHandler.uncaughtException(RuntimeInit.java:94)
05-27 11:33:59.901: W/System.err(15093): at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:693)
05-27 11:33:59.901: W/System.err(15093): at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:690)
05-27 11:33:59.901: W/System.err(15093): at dalvik.system.NativeStart.main(Native Method)
05-27 11:33:59.901: I/Process(15093): Sending signal. PID: 15093 SIG: 9