我正在创建一个添加到 FrameLayout 的自定义视图。当我初始化视图时,我得到一个 NullPointerException。我究竟做错了什么。视图的代码是:
public class DocumentCameraMask extends View {
private Context mContext;
public DocumentCameraMask(Context context) {
super(context);
this.mContext = context;
}
@Override
public void draw(Canvas canvas) {
// TODO Auto-generated method stub
Paint paint = new Paint();
paint.setColor(this.mContext.getResources().getColor(R.color.textColor));
paint.setStyle(Paint.Style.STROKE);
Rect cropRect = new Rect(0,0,800,600);
canvas.drawRect(cropRect, paint);
super.draw(canvas);
}
}
cropRect 大小将动态计算,这就是我需要制作此视图的原因。谢谢你的帮助。
日志猫
09-11 19:13:04.590:E/AndroidRuntime(4235):致命异常:主要 09-11 19:13:04.590:E/AndroidRuntime(4235):java.lang.RuntimeException:无法启动活动 DocumentCameraActivity}:java .lang.NullPointerException 09-11 19:13:04.590: E/AndroidRuntime(4235): 在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2184) 09-11 19:13:04.590: E/AndroidRuntime(4235) : 在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2211) 09-11 19:13:04.590: E/AndroidRuntime(4235): 在 android.app.ActivityThread.access$600(ActivityThread.java:149) 09- 11 19:13:04.590: E/AndroidRuntime(4235): 在 android.app.ActivityThread$H.handleMessage(ActivityThread.java:1300) 09-11 19:13:04.590: E/AndroidRuntime(4235): 在 android. os.Handler.dispatchMessage(Handler.java:99) 09-11 19:13:04.590:E/AndroidRuntime(4235): 在 android.os.Looper.loop(Looper.java:153) 09-11 19:13:04.590: E/AndroidRuntime(4235): 在 android.app.ActivityThread.main(ActivityThread.java :4987) 09-11 19:13:04.590: E/AndroidRuntime(4235): 在 java.lang.reflect.Method.invokeNative(Native Method) 09-11 19:13:04.590: E/AndroidRuntime(4235): 在java.lang.reflect.Method.invoke(Method.java:511) 09-11 19:13:04.590: E/AndroidRuntime(4235): 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java :821) 09-11 19:13:04.590: E/AndroidRuntime(4235): 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584) 09-11 19:13:04.590: E/AndroidRuntime (4235): 在 dalvik.system.NativeStart.main(Native Method) 09-11 19:13:04.590: E/AndroidRuntime(4235): 由: java.lang.NullPointerException 09-11 19:13:04.590:E/AndroidRuntime(4235): 在 android.view.ViewConfiguration.get(ViewConfiguration.java:332) 09-11 19:13:04.590: E/AndroidRuntime(4235): 在 android.view.View.(View.java:第3243章