2010-10-19 6 views
3

Je veux une clarification sur l'intention.Ceci est mon scénario, il y a 3 activités dans mon projet à savoir "A", "B", "C" ..... En cliquant sur le bouton Activité "A", je passe les valeurs à "B" par faisceau et basé sur la valeur reçue j'ai récupéré ensemble de valeurs de la base de données ... De même "B" ->"C" aussi ...Intention sur Android

le problème lorsque je clique sur le bouton de retour dans « C » il ne procède pas à « B » plutôt t hrows un error.similarly "B" à "A" aussi ....

j'ai trouvé la raison pour laquelle "B" ne peut pas obtenir la valeur du paquet lorsque vous cliquez sur le bouton Retour de "C"

Espérons que vous understand.what est la solution ....

Merci à l'avance

+0

Outre un code, il serait vraiment utile de nous dire quelle erreur est causée en appuyant en arrière. – Felix

+0

Exception Pointeur Null .... – Kakey

+0

il sera évident que l'exception pointeur NULL sera levée car lorsque vous appuyez sur Retour votre activité commencez à partir de la méthode "Oncreate" et il n'aura pas de valeurs ... Donc nullpointer sera levé. – jigar

Répondre

0

Essayez de commencer notre activité en utilisant startActivityForResult et utiliser setResult(int) pour renvoyer le résultat de l'activité C à B

+0

Vous aurez également besoin de vérifier le code de résultat pour être égal à RESULT_OK (-1) car il sera RESULT_CANCELED (0) lorsque la touche retour est touché avant que vous essayez de récupérer et les extras de l'intention. Pour être doublement sûr, vérifiez que l'intention n'est pas nulle. ET vous devrez utiliser setResult (int ResultCode, Intent data) lors du renvoi, et pas seulement le setResult (int Result Code) – NickT

+0

pour 'retrieve and extras', lire 'retrieve any extras'. -typo, désolé – NickT

0

ce vrai paquet de dire que vous obtenir des valeurs nulles, de sorte que vous devez éviter que les valeurs nulles, comme valeurs de premier faisceau de contrôle sinon Equals nul alors seulement mis

Intent myintent = getIntent(); 
if (null != myintent.getExtras()) { 
    // do your work here 
    String Name = myintent.getExtras().getString("Name"); 
} else { 
    // not here you can't get values 
    // so getting force close here 
    Toast.makeText(getApplicationContext(), "No Recor Here..", 12).show(); 
} 
Questions connexes