在我的应用中,我注意到使用主页按钮时有所不同。
实施例。 我按下应用程序图标,应用程序按活动(A)启动操作。当我按下主页按钮时,应用程序将尽可能地最小化。当我再次按下应用程序图标时,应用程序将使用带活动(A)的onResume()恢复
现在是棘手的部分。 在应用程序中,当我按下“开始”按钮时,将启动另一个活动(B),并将焦点更改为新活动(B)。当我按Home时,应用程序最小化(就像它应该的那样)。
现在针对这个问题: 如果我按下应用程序图标,我的应用程序从一开始就使用Activity(A)开始操作,其中我的开始按钮是。 (而不是我最小化的ActivityB) 如果我再次执行该方案(开始应用程序 - >重点关注活动(B) - >按回家),这次长按主页按钮,“最近启动”来了,我选择了我的应用程序。现在重点恢复到活动(B)
活动(A)和活动(B)都设置为SingleTop。
我的问题是,为什么使用LongPress home + icon和OneClick Home + icon的不同组合会有区别
答案 0 :(得分:4)
First think about this... when you are opening your application ...
your first Screen will be shown may be it is SplashScreen.
and if..you are in Activity A and goes to B and then Press BACK obviously
you will see Activity A.
所以现在当你长按主页按钮 .. 显示你最近的应用程序,保存最后显示的活动状态..这就是你从那里打开的原因..你没有SplashScreen直接看到Activity B.
和简单按Home键一次,你进入主屏幕你打开应用程序屏幕启动屏幕 ..从那里如果按任意图标该特定应用程序将被启动(意味着从其主要活动中打开应用程序,在Manifest中定义,并将Intent Filter设置为Launcher )...这就是为什么从那里打开应用程序将始终显示给您,你的SplashScreen。
This is not a Bug,not an Issue..This is how the Android is designed to work.
相同的按钮用于执行两个不同的事件,因为它们是相关的。但它不像两个事件都执行相同的操作。
答案 1 :(得分:1)
继续上面的场景,我有一个带登录屏幕的应用程序,它带我到活动A - >点击一些按钮将我带到活动B. 当有Homebutton的LongPress时,我开始另一个应用程序并保持相当长的时间,比如说5-10分钟。然后再次当我长按主页按钮,并返回到我的活动 - 它从活动B开始..这是正确的。 从活动B,如果我按返回键,它会转到活动A,但显示黑屏。在正常情况下,它显示了动态XML数据的列表视图。