我是android的新手。我已经知道当一些其他活动进入前台时会调用onPause()方法,而当活动不再可见时调用onStop()方法。有人请解释一下&#39 ; s在背景中的变化与变得不可见之间给出了一些实际的例子。
答案 0 :(得分:0)
最好的例子?弹出窗口,您的活动仍然可见,因此只调用onPause()。变得不可见是在启动另一个活动时,应用程序被发送到后台,用户切换到另一个应用程序等。
答案 1 :(得分:0)
考虑两个案例
<强> 1。将活动B调用为对话框
在这种情况下,Activty A的某些部分将可见。因此,只有onPause()
方法会被调用活动A.当你从活动B回到A时,活动A的onResume()
将被调用。
2.将活动B称为正常活动
在这种情况下,Activity A
将完全不可见,因此onPause()
和onStop()
都会被调用。当你从活动B回到A时,将调用活动A的onRestart(), onStart() and onResume()
方法。
看看
案例1:如果您呼叫正常活动。 (这将隐藏来电者活动)
onPause()
onStop()
<------- Back to caller
onRestart()
onStart()
onResume()
案例2:如果您将对话活动称为活动。 (这将部分隐藏来电者活动)
onPause()
<------- Back to caller
onResume()
答案 2 :(得分:0)
每当在任何活动上出现一个对话框时,活动的onPause()被调用,此活动保持堆栈中的第一个位置(顶部),另一方面,每当我们将活动从一个活动切换到另一个活动时## 39; s调用Stop()方法,有时会自动收集垃圾。