Показать Yes/No-Dialog вместо OK/Cancel

Я ненавижу диалоговые окна OK/Cancel, потому что если мое приложение спросит кого-нибудь, если он действительно хочет что-то сделать, вы никогда не должны отвечать "Отмена".

Маленький пример:

final AlertDialog.Builder b = new AlertDialog.Builder(this);
b.setIcon(android.R.drawable.ic_dialog_alert);
b.setTitle("Hello World");
b.setMessage("Did you do your homework?");
b.setPositiveButton(android.R.string.yes, null);
b.setNegativeButton(android.R.string.no, null);
b.show();

Возможно ли, что константы "да" и "нет" действительно означают "да" и "нет" с локализацией? Или я делаю это явным в своем строчном ресурсе и не могу использовать глобальные константы. Поэтому я заменяю две строки:

b.setPositiveButton("Yes", null);
b.setNegativeButton("No", null);

(или ресурсы вместо констант здесь)

С уважением xZise

Ответы

Ответ 2

Помните, что содержимое этих текстовых ресурсов на английском языке на самом деле "ОК" и "Отмена", не "Да" и "Нет".. Если вам нужны "Да" и "Нет", вы должны использовать свою собственную строку Ресурсы. См. Например http://code.google.com/p/android/issues/detail?id=3713 и http://groups.google.com/group/android-developers/browse_thread/thread/30b589fa9aca185a

Ответ 3

То, что вы предоставили, должно работать. (В стороне, на правильном английском языке, ваш вопрос должен сказать: "Вы сделали домашнее задание? Или вы сделали домашнее задание?)

Я не думаю, что есть какой-либо глобальный английский стандарт относительно ok/cancel и yes/no. Это зависит от контекста. Существуют определенные контексты, в которых один или другой смысл имеет смысл. Я отлично понимаю, что да/нет, если это имеет смысл для тех вещей, которые вы задаете.