CustomDialog vs. Activity с theme.dialog - PullRequest
       5

CustomDialog vs. Activity с theme.dialog

0 голосов
/ 20 августа 2011

Мне нужен диалог с 2 видами текста и около 8 кнопок + ОК и кнопка отмены.Нажатие одной из 8 кнопок должно изменить вид текста.Кнопка «ОК» должна возвращать последнюю нажатую кнопку, а кнопка «Отмена» должна возвращать специальное значение.

Я думаю, что для этого лучше специальное действие, чем пользовательский диалог, но у меня проблема с возвратом последней переключенной кнопки.

handler = new Handler() {
        @Override 
        public void handleMessage(Message msg) 
        { 
            Intent intent = new Intent(context, Spellbook.class);
            context.startActivity(intent);
        }
    };

Я не запускаю действие из основного потока, поэтому мне нужно использовать обработчик, но я не знаю, как я могу запустить действие с ответом там.Есть идеи как это решить?

1 Ответ

0 голосов
/ 20 августа 2011

У вас просто проблема с возвратом значения из начального действия?

Если это так, вам просто нужно обработать метод onActivityResult() на Activity, который используется в качестве контекста для нового Intent, и убедиться, что в вызываемых Activity вы используете setResult() и finish() ..

В звонилке Activity ..

setResult(RESULT_OK, /* Some Intent with Data should go here */ null);
finish();

В призвании Activity ..

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    /* Handle result and extract data from Intent */
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...