我目前正在构建Android应用程序。在某种意义上,我的应用程序本质上是动态的,用户可以根据存储在应用程序中的一组布尔变量来体验多个活动流。以下是我的意思的一些例子:
让A, B, C, D, E
在我的应用程序中是不同的活动,flag1, flag2, flag3
是不同的布尔变量。
if flag1 is true
activity flow:
A -> B -> C -> D -> E
back navigation:
A <- C <- D
if flag2 is true
activity flow:
B -> C -> D
back navigation:
B <- C <- D
if flag3 is true
activity flow:
A -> D -> E
back navigation:
A <- E
if flag3 is false
activity flow:
D -> E
backstack:
A <- E
我的应用程序包含许多if / else条件,只是通过调用startActivity()
方法来处理每个活动中的前向和后向活动更改。有没有更好的方法来管理此活动流程?例如,通过创建自定义堆栈或ArrayList<Activity>
。