Yup n'est pas reconnu car vous créez la chaîne dans la méthode onClick et il est recyclé lorsque onClick est terminé.
Je recommande juste de se débarrasser de Yup, parce que même si vous résolvez cela, vous aurez des problèmes. La boîte de dialogue apparaîtra, mais au moment où l'utilisateur sélectionne, l'application aura déjà passé par l'instruction if, donc Yup n'a jamais une chance d'égaler "Oui". En d'autres termes, la boîte de dialogue n'interrompe pas votre code et attend la saisie de l'utilisateur avant de passer par "if (Yup ==" yes "). En outre, l'instruction if doit ressembler à ceci: if (Yup.equals("yes"))
, sinon, elle retournera . false chaque
je faire ressembler votre code comme ceci:
public final void deleteBookmark(Cursor cur, int pos) {
//fetching info
((Cursor) cur).moveToPosition(pos);
final String bookmark_id = ((Cursor) cur).getString(((Cursor) cur).getColumnIndex(Browser.BookmarkColumns._ID));
final String bookmark_title = ((Cursor) cur).getString(((Cursor) cur).getColumnIndex(Browser.BookmarkColumns.TITLE));
//asking user to approve delete request
AlertDialog alertDialog = new AlertDialog.Builder(Dmarks.this).create();
alertDialog.setTitle("Delete" + " " + bookmark_title);
alertDialog.setIcon(R.drawable.icon);
alertDialog.setMessage("Are you sure you want to delete this Bookmark?");
alertDialog.setButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//deleting if user approved
getContentResolver().delete(Browser.BOOKMARKS_URI, "_id = " + bookmark_id, null);
//notifying user for deletion
Context context = getApplicationContext();
Toast.makeText(context, bookmark_title + " " + "deleted" , Toast.LENGTH_SHORT).show();
} });
alertDialog.setButton2("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Context context = getApplicationContext();
Toast.makeText(context, "canceled" , Toast.LENGTH_SHORT).show();
} });
alertDialog.show();
}
}
définir la variable ** chaîne Yup = "yes"; ** hors de la fonction "onclick" et que la valeur assign de fonction pour.. Exemple dans la zone "// Récupération des infos" Cochez ici: http://pastie.org/1168788 –
Merci de répondre, il ne reconnaîtra toujours pas le "YUP" intérieur seulement l'extérieur ... ce qui ne veut rien dire cas, l'utilisateur a choisi de supprimer.: \ –
Btw, aucune raison de faire: '((Curseur) cur) .moveToPosition (pos); '... il suffit d'utiliser:' cur.moveToPosition (pos); '. – Cristian