0

我想显示一个对话框,无论用户在哪个屏幕。假设如果用户打开应用程序,如果我收到服务器消息,则在初始屏幕中,我必须在对话框中显示它。同时有一个 autologin 选项。所以它可以移动到我的下一个活动。如果是这种情况,不应该关闭对话框。它应该显示在新打开的活动而不是以前的活动上。另一件事是,即使显示了对话框,我也应该能够控制我的活动按钮。

这就是我正在做的事情。

  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");
}

相反,我在所有活动中显示对话框。

提前致谢。

4

1 回答 1

1

您可能需要考虑使用事件驱动模型,例如 GreenRobot。

http://greenrobot.org/eventbus/

这将使您能够有效地处理您描述的场景。

或者,您可以使用LocalBroadcastManager来在应用程序的不同部分之间进行通信。

例如,当您想要显示对话框并在所有活动中处理该消息时发送广播消息

于 2017-02-02T13:22:20.860 回答