在不创建依赖项的情况下切换活动

时间:2013-05-23 17:13:32

标签: android performance

我正在使用包含多个(10+)活动的代码库。每个Activity类都能够启动项目中的每个其他Activity。在代码中,这看起来像startActivityA(),startActivityB()等....所以代码中有很多重复和依赖。

我的问题是:创建一个类(可能甚至是一个Activity)作为所有其他活动的导航控制器有什么问题吗?因此,当活动A想要启动活动B时,它可以调用此类(可能传入字符串“B”),然后THAT类将启动活动。活动A& B将不再相互依赖,代码也会少得多。

谢谢!

1 个答案:

答案 0 :(得分:1)

实现目标的一种可能更简单的方法可能就是使用Intent Flags。您可以使用标志Intent.FLAG_ACTIVITY_REORDER_TO_FRONT,因此如果Activity已经在堆栈中,则不会创建新实例。此

不会有任何依赖或冗余

Intent Flags

我假设您知道如何在Flags中设置Intent,但如果不是

    intent = new Intent(FirstActivity.this, SecondActivity);
    intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); 
    startActivity(intent);