2011-04-27 2 views
4

Dans mon application, je devais appeler findViewbyId() à la fois onCreate() et WebChromeClient.onCompletion(). Pour éviter findViewbyId()returning null J'ai eu recours à appeler Activity.setContentView(int viewResID) avant d'appeler findViewbyId().Les effets secondaires de l'appel Activity.setContentView() deux fois de suite

Cela fonctionne, mais maintenant je me demande si j'ai pu créer une "bombe à retardement" dans mon code sur la route.

Y at-il des mises en garde que je dois garder à l'esprit lorsque je fais quelque chose comme ça?

Répondre

8

Il n'y a aucun problème à le faire. Vous devez réinitialiser les références (chaque findViewById doit être appelé à nouveau) et cela peut être gênant si vous le faites. BEAUCOUP de fois, mais ce n'est pas une bombe à retardement du tout.

+0

Merci! La seule raison pour laquelle j'appelle Activity.setContentView() plus d'une fois est parce que je dois appeler findViewById() pour une vue particulière plus d'une fois. L'astuce pour devoir rappeler ** chaque ** findViewById est inestimable. Merci beaucoup. – uTubeFan

Questions connexes