Tag: 后备栈

如何从后台popup碎片

我有一个活动A,它调用片段Bf,它调用片段Cf. 当Cf被调用时,我希望Bf被放置在后台堆栈中,以便用户可以导航回到它。 但是,如果在Cf中按下特定的button,我希望将Bf从后台删除。 这可能吗? 我看到有一个popBackStack()函数。 不过,我对这是如何工作有点困惑。 使用这个function是否安全? Bf在后台上插入不同应用程序的活动是否有可能? 另外,是否有任何方法来改变在堆叠片段的savedInstanceState? 我只是无法弄清楚如何使用模拟器对后台进行可靠的testing。

如何清除Android Stack的活动?

我有一个应用程序与Android中的几个活动,我希望用户能够通过按菜单button注销。 我有这个问题是 答)Android不会让你终止应用程序 B)即使我再次将用户发送到LoginActivity ,他们也可以总是按回来,并返回到之前的活动。 我已经尝试使用以下两个标志启动活动: Intent intent = new Intent(this, LoginActivity.class); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent); 我也尝试了他们每一个人自己。 我也试过在startActivity(intent) finish()之后调用finish() ,因为我在另一个StackOverflow问题中读到。

Android:打开活动而不保存到堆栈中

我有2个活动:主要和列表。 从Main可以打开List; 从List中可以打开Main。 我喜欢这样,每一个列表的开放不会被保存到“历史”。 所以,从Main按下不能返回到List。 可能吗?

Android:从后面的堆栈中删除所有以前的活动

当我点击我的configuration文件活动中的注销button时,我想将用户带到login页面,在那里他需要使用新的凭据。 因此我使用这个代码: Intent intent = new Intent(ProfileActivity.this, LoginActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(intent); 在注销button的onButtonClick 。 但问题是,当我点击设备返回button的login活动,它把我带到ProfileActivity。 我期待的应用程序应该closures,当我按下设备上的LoginActivity返回button。 我究竟做错了什么? 我还在我的LoginActivity清单中添加了android:launchMode="singleTop" 谢谢

如何防止以不同意图启动的多个活动实例

当我的应用程序使用Android市场上的“打开”button启动时,遇到了一个错误。 看起来,从市场上推出它使用不同的意图,然后从手机的应用程序菜单启动它。 这导致了正在启动的相同活动的多个副本,这些副本彼此冲突。 例如,如果我的应用程序包含活动ABC,则上述问题可能会导致堆栈ABCA。 我尝试使用android:launchMode="singleTask"在所有活动来解决这个问题,但它有不必要的副作用,每当我打开HOME清除活动堆栈根。 例如: ABC – > HOME – > A当我需要的是ABC – > HOME – > ABC 使用HOME时,是否有防止启动同一types的多个活动而不重置为根活动的好方法?