Android 如何在使用自定义视图或SurfaceView时避免NullPointerException

Android 如何在使用自定义视图或SurfaceView时避免NullPointerException,android,custom-controls,nullpointerexception,Android,Custom Controls,Nullpointerexception,我创建了一个名为CaptureView的自定义SurfaceView,并试图将其添加到main.xml文件中: <dev.recorder.client.CaptureView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/capturePreview"/> 有人知道如何解决此问题吗?请确保您是在onFinishInflate中初始化视图,而不是在构

我创建了一个名为
CaptureView
的自定义
SurfaceView
,并试图将其添加到
main.xml
文件中:

<dev.recorder.client.CaptureView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/capturePreview"/>

有人知道如何解决此问题吗?

请确保您是在onFinishInflate中初始化视图,而不是在构造函数中初始化视图。
布局预览代码可能会通过不同的代码路径初始化控件。

那么问题是它在Eclipse中没有正确地为您提供预览吗?
setContentView(R.layout.main);

    bindControls();

private void bindControls()
{
    videoPreview = (CaptureView)findViewById(R.id.capturePreview);

    txtstatus = (TextView)findViewById(R.id.txtMode);
    txtTimer = (TextView)findViewById(R.id.txtTime);
}