2011-06-27 5 views
7

Je souhaite appeler onCreate (Bundle cicici); d'autre méthode puis j'obtiens "NullPointerException", alors s'il vous plaît guidez-moi comment puis-je appeler le onCreate() à partir d'une autre méthode().Android, Comment appeler onCreate() explicitement à partir d'une autre méthode?

public void moreFriendsButtonClick(int id) 
{ 
    contentId= id; 
    onCreate(tempBundle); 
} 

Ici je passe la valeur int, et

tempBundle=savedInstanceState; 

et après que je reçois NullPointerException

+13

Pourquoi avez-vous besoin? Si vous voulez appeler du code qui se trouve dans votre 'onCreate', alors déplacez ce code vers une fonction nommée' onCreateHelper' et appelez les deux à partir de votre 'onCreate' et de tous les autres endroits dont vous avez besoin. – inazaruk

+2

@inazaruk - Cela devrait être une réponse :) – MByD

+0

ici je fais i classe TabActivity et un de l'onglet ont des boutons, et je veux cliquer sur ce bouton spécifique et la page d'activité concernant ce bouton, devrait être afficher dans Tab contentView zone (disposition du cadre). si je ne fais pas comme ça alors appelé Activité en plein écran ... C'est la raison .. alors s'il vous plaît me guider ... –

Répondre

4

vous devez créer le faisceau à nouveau. savedInstanceState est local à la méthode onCreate. essayer

tempBundle = new Bundle(); 
onCreate(tempBundle); 

Cela devrait fonctionner.

+2

désolé, je l'ai fait aussi et obtenir NullPointerException. –

1

C'est ce qui a fonctionné pour moi:

onCreate(new Bundle()); 
Questions connexes