我有一个游戏菜单,它是一个活动,而一个实际的游戏,是另一个活动。
我也有一个自定义Dialog类,它显示“正在加载...”文本和一个旋转的轮子。 (我可以添加代码,但是它与普通的ProgressDialog几乎相同。没什么特别的)。
我希望从菜单活动(加载时)开始显示此对话框,并在过渡到游戏活动后继续显示该对话框-直到游戏加载完成。
这甚至可以实现吗?我没有找到一种将Dialog扩展到2个活动的方法。它似乎绑定到一个。
最佳答案
这甚至可以实现吗?
据我所知。 Dialog
是UI元素,因此与创建它的Activity
的“窗口”一起存在。启动新的Activity
显然意味着它将覆盖先前的Dialog
及其当前显示的所有Dialog
。
在我看来,只有两种简单的方法可以完成您想要的工作...
确保正在“加载”您的游戏的内容在某个单独的位置(服务等)运行,并且可以从两个活动中访问进度,然后在启动第二个Activity
时简单销毁第一个Dialog
,创建一个新的Fragments
并从第一个中断的位置(有进度,消息等)开始收集。
如果您的菜单和主要游戏玩法可以由Fragment
托管,则只需将菜单Fragment
交换到单个Activity
中的游戏Dialog
。这样,将继续存在而不会中断。