0

Я хочу показать диалог Независимо от того, на каком экране находится пользователь. Предположим, если пользователь откроет приложение и на первом экране, если я получу сообщение сервера, я должен показать его в диалоговом окне. Между тем есть возможность автологин. Таким образом, он может перейти к моей следующей деятельности. Если это тот случай, что диалог не должен быть закрыт. Он должен показывать только что открытую активность, а не предыдущую активность. Другое дело, что, хотя диалог показан, я должен уметь управляйте моими кнопками в действии.Отображение AlertDialog на экране независимо от экрана активности

Вот что я делаю.

if(Activity1.mcontext!=null){ 
            CommonMethods.showDialog(sliderMessageText, 

            LoginActivity.mcontext,"activity1"); 
           } 
           if(Activity2.context!=null){ 
            CommonMethods.showSliderMessageText(sliderMessageText, 

              Activity2.context,"activity2"); 
           } 
           if(Activity3.mcontext!=null){ 
            CommonMethods.showSliderMessageText(sliderMessageText,Activity3.context,"activity3"); 
} 

Вместо этого я показываю диалог во всех действиях.

Заранее спасибо.

ответ

1

Возможно, вы захотите рассмотреть использование модели, управляемой событиями, например GreenRobot.

http://greenrobot.org/eventbus/

Это позволит вам эффективно обрабатывать сценарий вы описываете.

В качестве альтернативы вы можете использовать LocalBroadcastManager для связи между различными частями вашего приложения.

e.g Отправка широковещательного сообщения, когда вы хотите отобразить диалог и обработать это сообщение во всех своих действиях.