我正在使用包含多个(10+)活动的代码库。每个Activity类都能够启动项目中的每个其他Activity。在代码中,这看起来像startActivityA(),startActivityB()等....所以代码中有很多重复和依赖。
我的问题是:创建一个类(可能甚至是一个Activity)作为所有其他活动的导航控制器有什么问题吗?因此,当活动A想要启动活动B时,它可以调用此类(可能传入字符串“B”),然后THAT类将启动活动。活动A& B将不再相互依赖,代码也会少得多。
谢谢!
答案 0 :(得分:1)
实现目标的一种可能更简单的方法可能就是使用Intent Flags
。您可以使用标志Intent.FLAG_ACTIVITY_REORDER_TO_FRONT
,因此如果Activity
已经在堆栈中,则不会创建新实例。此
我假设您知道如何在Flags
中设置Intent
,但如果不是
intent = new Intent(FirstActivity.this, SecondActivity);
intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);