Анденжин задавать вопросы с тостами?
Интересно, есть ли какая-нибудь нативная поддержка для andengine или ADK, чтобы задавать вопрос-тосты? Например, если я нажимаю кнопку "Назад", я хочу, чтобы появилось всплывающее окно с вопросом, действительно ли я хочу выйти из приложения и дать мне возможность ответить "да" или "нет".
2 ответа
Лучше использовать диалоговое окно оповещения, используйте этот код, надеюсь, работать так же, как это
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
switch(keyCode)
{
case KeyEvent.KEYCODE_BACK:
AlertDialog.Builder ab = new AlertDialog.Builder(AlertDialogExampleActivity.this);
ab.setMessage("Are you sure?").setPositiveButton("Yes", dialogClickListener)
.setNegativeButton("No", dialogClickListener).show();
break;
}
return super.onKeyDown(keyCode, event);
}
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;
}
}
}
Вы нашли хорошее решение, но для приведенного выше ответа вы должны использовать функциональность AndEngine. Если вы работаете с AndEngine, то вам нужно развивать все с помощью AndEngine.
Таким образом, для вашего решения вы должны создать одну дочернюю сцену, которая появляется, когда пользователь нажимает кнопку возврата устройства, как в следующем фрагменте кода.
class DialogBox extends Scene{
DialogBox(...){
}
// you have to include all the functionality that your dialog box should contain
}
Вы должны установить вышеприведенное диалоговое окно как дочернее для вашей основной сцены, как показано ниже для события back пользователя.
mScene.setAsChildScene(new DialogBox(...));
Я предпочитаю этот путь, если я разрабатываю игру.