カスタムビューまたはSurfaceViewsを使用するときにNullPointerExceptionを回避する方法

StackOverflow https://stackoverflow.com/questions/985851

質問

私はSurfaceViewというカスタムCaptureViewを作成し、main.xmlファイルにそれを追加しようとしました。

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

アプリケーションが正常に動作するようですが、私はEclipseでmain.xmlタブからレイアウトに切り替えた場合、テキストNullPointerExceptionではなく、レイアウトプレビューで表示されます。

の活動では、私は、コントロールに次のようにバインドさ

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);
}

誰もがこの問題を解決することができる方法を知っていますか?

役に立ちましたか?

解決

あなたは、コンストラクタでonFinishInflateでビューを初期化していないことを確認してください。 レイアウトプレビュー・コードは、異なるコードパスを通して、あなたのコントロールを初期化することがあります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top