维护Android应用程序的活动堆栈

时间:2014-07-28 09:13:59

标签: android android-activity back

如果有人可以帮我解决这个问题,那将是有责任的。我们正在开发一些Android应用程序,在设计原型时我们遇到了一些问题。应用程序原型的一些描述如下:

  • 登录屏幕
  • 主屏幕,右上方有注销
  • 其他所有活动都在右上角有一个主页按钮。 现在从我的应用程序中的一个活动转到另一个活动,我刚刚调用当前活动并启动另一个活动( 因此没有创建活动的堆栈 )当按下每个活动的顶角上的主页按钮时,我完成当前活动并移动到主屏幕。
  

更准确地说,我可以说我压倒了每个活动的onBackPressed()方法

。通过这样做,我不会让android保留一堆活动,但通过这样做,我有一种感觉,我正在失去效率和降低性能。因为在每个背压或主页按钮上单击一个活动已完成,另一个是创造的。因为重新创造了活力,所以可以看到一些滞后。 请建议我应该继续这个还是有其他方法来处理这个 感谢您给予时间

1 个答案:

答案 0 :(得分:1)

这取决于。

如果您要在每个屏幕上选择回家,这种方法很好。

因为如果你在堆栈中保存活动,它将在RAM中受限,因此如果堆栈中的许多活动可能会产生内存问题。

我想再提一个建议。

正如您所说,您已在每项活动中覆盖了onBackPressed()方法。

相反,您可以选择在清单标记中指定父活动。

因此您无需通过覆盖onBackPressed()方法手动处理。

EG。

<activity
            android:name="com.xxx.DetailActivity"
            android:parentActivityName="com.xxx.src.ListActivity"
            android:screenOrientation="portrait"
            android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />