Comment éviter NullPointerException lors de l'utilisation des vues personnalisées ou SurfaceViews

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

Question

J'ai créé un appelé SurfaceView personnalisé CaptureView et essayé de l'ajouter dans le fichier main.xml:

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

L'application semble fonctionner très bien, mais si je passe d'onglet main.xml à la mise en page dans Eclipse le NullPointerException texte apparaît au lieu de la mise en page d'aperçu.

Dans l'activité que je binded les contrôles de la manière suivante:

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

Quelqu'un sait comment cette question pourrait être résolue?

Était-ce utile?

La solution

Assurez-vous que vous initialisez la vue onFinishInflate et non dans le constructeur. le code de prévisualisation de mise en page peut initialiser votre contrôle par un chemin de code différent.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top