Potoman Posté(e) 25 août 2011 Share Posté(e) 25 août 2011 Re-bonjour tout le monde ! Aujourd'hui, mon gros problème se trouve au niveau des AlertDialog. Non loin de là que je ne sache pas m'en servir mais là le problème viens... D'autre part ! J'ai une ListView qui lorsque l'on click sur un item va lancer une page internet à l'aide de startActivityForResult, et lors d'un appuie sur "back" pour revenir sur l'application, une alertDialog doit naturellement s'ouvrir pour savoir si l'utilisateur souhaite enregistrer le lien. Le problème, c'est que dans le code de mon OnActivityResult, où se trouve la création et l'affichage de mon AlertDialog, android semble perdre la view... En clair, dans mon DDMS, j'ai cette ligne : couldn't save which view has focus because the focused view android.widget.LinearLayout@463c18d0 has no id. Donc des fois l'AlertDialog s'affiche, des fois non ! Je vous montre le code de mon onResultActivity, mais je ne vois vraiment pas ce qui cloche vue que DES FOIS, l'AlertDialog s'affiche... @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { //TODO : Récupérer le oui ou non pour en faire un favoris... Log.v("Ragots", "********************************ON_ACTIVITY_RESULT**************************************"); DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { switch (which){ case DialogInterface.BUTTON_POSITIVE: //Yes button clicked break; case DialogInterface.BUTTON_NEGATIVE: //No button clicked break; } } }; AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setMessage("Are you sure?").setPositiveButton("Yes", dialogClickListener) .setNegativeButton("No", dialogClickListener).setTitle("Title").setIcon(R.drawable.icon).show(); } Si quelqu'un sais comment résoudre ce problème car j'ai chercher sur le net et pour le moment je n'ai rien de concluant. Cordialement. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Potoman Posté(e) 25 août 2011 Auteur Share Posté(e) 25 août 2011 Re-bonjour tout le monde ! Aujourd'hui, mon gros problème se trouve au niveau des AlertDialog. Non loin de là que je ne sache pas m'en servir mais là le problème viens... D'autre part ! J'ai une ListView qui lorsque l'on click sur un item va lancer une page internet à l'aide de startActivityForResult, et lors d'un appuie sur "back" pour revenir sur l'application, une alertDialog doit naturellement s'ouvrir pour savoir si l'utilisateur souhaite enregistrer le lien. Le problème, c'est que dans le code de mon OnActivityResult, où se trouve la création et l'affichage de mon AlertDialog, android semble perdre la view... En clair, dans mon DDMS, j'ai cette ligne : couldn't save which view has focus because the focused view android.widget.LinearLayout@463c18d0 has no id. Donc des fois l'AlertDialog s'affiche, des fois non ! Je vous montre le code de mon onResultActivity, mais je ne vois vraiment pas ce qui cloche vue que DES FOIS, l'AlertDialog s'affiche... @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { //TODO : Récupérer le oui ou non pour en faire un favoris... Log.v("Ragots", "********************************ON_ACTIVITY_RESULT**************************************"); DialogInterface.OnClickListener dialogClickListener = new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { switch (which){ case DialogInterface.BUTTON_POSITIVE: //Yes button clicked break; case DialogInterface.BUTTON_NEGATIVE: //No button clicked break; } } }; AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setMessage("Are you sure?").setPositiveButton("Yes", dialogClickListener) .setNegativeButton("No", dialogClickListener).setTitle("Title").setIcon(R.drawable.icon).show(); } Si quelqu'un sais comment résoudre ce problème car j'ai chercher sur le net et pour le moment je n'ai rien de concluant. Cordialement. EDIT : Il y a quand même un truc qui m'intrigue... Lors de l'appel de ma page web : Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(item.getTitle().toString())); startActivityForResult(intent, item.getItemId()); Le log de mon OnActivityResult se fait automatique même si je suis encore sur la page web... C'est normal ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Bismuth76 Posté(e) 25 août 2011 Share Posté(e) 25 août 2011 Salut ! Le log de mon OnActivityResult se fait automatique même si je suis encore sur la page web... C'est normal ? Je ne sais pas vraiment si ça peut t'aider, mais je vais répondre par une question : est-ce que le navigateur web génère son setResult() au moment où la page a fini de se charger ou au moment de son arrêt ? (C'est pitetre une c*nnerie, je ne me suis jamais servi des intents en attendant un résultat :D ) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Potoman Posté(e) 25 août 2011 Auteur Share Posté(e) 25 août 2011 Salut ! Je ne sais pas vraiment si ça peut t'aider, mais je vais répondre par une question : est-ce que le navigateur web génère son setResult() au moment où la page a fini de se charger ou au moment de son arrêt ? (C'est pitetre une c*nnerie, je ne me suis jamais servi des intents en attendant un résultat :D ) MERCI ! lol En fait ta réponse m'a vraiment fait bien comprendre le mécanisme. Je pense que oui, onResultActivity était appelé qu'après le retour à l'Activité... Alors que pas du tout ! :| Donc j'ai relancer normalement mon startActivity, et puis je vais récupérer le résultat normalement grâce à la fonction onReStart. Par contre, savoir si l'URL est valide avec le setResult du navigateur pourrai être intéressant... Mais ça, je ne sais pas comment on fait. Cordialement. Potoman Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.