gpt4 book ai didi

android - 保持对话高于 Activity

转载 作者:行者123 更新时间:2023-11-30 04:24:02 25 4
gpt4 key购买 nike

我有一个依赖于连接的应用程序它有很多 Activity 。我需要在连接断开时显示一个进度重新连接对话框并保持它直到连接恢复或用户关闭而不管正在运行的 Activity 。我在 BaseActivity 中创建了这个拦截连接失败事件的方法,它是我所有 Activity 的父级:

public void xmppConnectionClosed() {
connectionError = true;
onScreenActivity.runOnUiThread(new Runnable() {
@Override
public void run() {
initiateReconnectionDialog(onScreenActivity); //onScreenActivity is singlton represent the current activity
reconnectionDialog.setMessage(onScreenActivity
.getString(R.string.reconnectionDialogReconnecting));
reconnectionDialog
.setStatus(ReconnectionStatus.RECONNECTING);
// setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_NOSENSOR);
reconnectionDialog.show();

}

});

}

它的onCreate

protected void onCreate(android.os.Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (connectionError) {
initiateReconnectionDialog(this);
reconnectionDialog.show();
}
}

现在的问题是,如果我有 Activity A 启动 Activity B,当我旋转设备时,将调用 Activity A 的 onCreate,如果我试图显示对话框,它会抛出一个异常,表明它不是前台 Activity 。任何想法如何处理这种情况?

最佳答案

这听起来像是一个必须从后台服务中调出的对话框。必须如此,因为您不关心 Activity 是否正在运行。该 Activity 必须启动服务并在后台运行。

关于android - 保持对话高于 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8819439/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com