Yup не распознается, потому что вы создаете строку в методе onClick, и она перерабатывается после завершения onClick.
Я рекомендую просто избавиться от Yup, потому что даже если вы это исправите, вы 'будут проблемыПоявится диалоговое окно, но к тому времени, когда пользователь выберет, приложение уже выполнит оператор if, поэтому у Yup никогда не будет шанса равняться «Да».Другими словами, диалоговое окно не приостанавливает ваш код и не ждет ввода пользователя, прежде чем пройти через "if (Yup ==" yes "). Кроме того, оператор if должен выглядеть следующим образом: if (Yup.equals("yes"))
, иначе этобудет возвращать false каждый раз.
Я бы сделал ваш код похожим на:
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();
}
}