我似乎无法找到在应用程序中设置单个活动的最大实例数的任何方法。基本上,如果它的最大值为2,我希望它看起来像是:
A - > B - >乙
如果用户尝试启动另一个相同的活动,它会替换最近的“B”,但只留下第一个。但是,如果只有一个'B',那么只需创建第二个'B'。只有当有两个'B'活动才开始取代'B'。
有很多选项可以确保只有1个活动,例如clear top和reorder front,但这似乎不可能。有人试过吗?
答案 0 :(得分:0)
通常,创建Activity
的多个实例非常难以管理,因为您无法使用任何Activity
标记来寻址或返回Intent
的任何特定实例。我不了解您的应用或您的要求,但您应该考虑重新架构,使用以下其中一个想法:
Intent.FLAG_REORDER_TO_FRONT
重用现有实例。B
启动B
,只需重复使用同一个B
实例,只需更改其中的数据,就会产生错误,即您正在创建新的Activity
(动画过渡或其他)Activity
(扩展现有类的新类)的副本,然后启动它,这样就不会有B
的2个实例,而是B
的一个实例和CopyB
。