Android 如何使用onResume()?
谁能给我举一个在Android中使用Android 如何使用onResume()?,android,android-lifecycle,onresume,Android,Android Lifecycle,Onresume,谁能给我举一个在Android中使用onResume()的例子 另外,如果我想在另一个活动的执行结束时重新启动该活动,将执行哪个方法-onCreate()或onResume() 如果我想更新数据,如何将其放入onResume()?重新启动应用程序将调用OnCreate() 暂停时继续应用程序将调用OnResume()。从官方文档中,这里是活动生命周期图 重新查看Android活动生命周期参考。这里有一张很好的图片,表格显示了调用的方法。参考链接 任何重新启动的活动都会首先执行其onResume(
onResume()
的例子
另外,如果我想在另一个活动的执行结束时重新启动该活动,将执行哪个方法-onCreate()
或onResume()
如果我想更新数据,如何将其放入
onResume()?
重新启动应用程序将调用OnCreate()
暂停时继续应用程序将调用OnResume()
。从官方文档中,这里是活动生命周期图
重新查看Android活动生命周期参考。这里有一张很好的图片,表格显示了调用的方法。参考链接
任何重新启动的活动都会首先执行其onResume()方法 要使用此方法,请执行以下操作:
@Override
public void onResume(){
super.onResume();
// put your code here...
}
override fun onResume() {
super.onResume()
// your code here
}
onResume()
是整个过程中调用的方法之一onResume()
与onPause()
相对应,当某个活动从视图中隐藏时(例如,如果您启动了一个隐藏该活动的新活动),就会调用该函数onResume()
在屏幕上显示隐藏的活动时调用
您的问题是询问用于重新启动活动的方法<代码>onCreate()在首次创建活动时被调用。实际上,大多数活动都是通过一系列的onPause()
和onResume()
调用在后台进行的。如果一个活动首先通过调用onStop()
完全停止,然后又重新启动,那么它只有通过onRestart()
才能真正“重新启动”。因此,如果您实际上没有使用onStop()
停止活动,则最有可能使用的是onResume()
阅读上面链接中的android文档,更好地了解不同生活方式之间的关系。无论最终使用哪种生命周期方法,通用格式都是相同的。您必须重写标准方法,并在注释部分中包含您的代码,即您希望活动在此时执行的操作
@Override
public void onResume(){
//will be executed onResume
}
最好的理解方法是在活动中覆盖所有生命周期方法,并在每个方法中放置断点(如果签入emulator)或日志。你会知道什么时候打电话给谁 就像扰流板一样,首先调用
onCreate()
,然后如果您通过转到主屏幕或启动另一个活动暂停活动,则会调用onPause()
。如果操作系统同时销毁活动,将调用onDestroy()
。如果恢复应用程序并且应用程序已被销毁,将调用onCreate()
,否则将调用onResume()
编辑:我忘记了onStop()
,它在onDestroy()之前被调用
做我提到的练习,你会有更好的理解。前面的大多数答案都很好地解释了如何、为什么以及何时使用onResume()
,但我想补充一些关于重新创建活动的内容
我想知道是否要在执行其他方法结束时重新启动活动onCreate()或onResume()执行的是什么方法
答案是onCreate()
但是,当决定实际重新创建它时,您应该问问自己有多少活动需要重新创建。如果它是适配器中的数据,比如列表,那么您可以在适配器上调用notifyDataChanged()
,以重新填充适配器,而不必重新绘制所有内容
此外,如果您只需要更新某些视图
,而不是全部视图,那么在需要更新的视图上调用invalidate()
可能会更有效。这只会重新绘制那些视图
,并可能使应用程序运行更平稳。我希望这能帮助你 活动启动后,重新启动(onRestart()发生在onStart()之前),或暂停(onPause()),调用onResume()。当活动处于onResume()状态时,应用程序用户即可使用该活动
我对活动生命周期进行了一些研究,以下是我对本主题的理解:
如果要在另一个活动的执行结束时重新启动活动(A),可能会有几种不同的情况
另一个活动(B)已暂停和/或停止或销毁,而活动A可能已暂停(onPause()),在这种情况下,活动A将调用onResume()
活动B已暂停和/或停止或销毁,活动A可能因内存问题而停止(onStop()),在这种情况下,活动A将首先调用onRestart(),然后调用onStart(),然后调用onResume()
活动B已暂停和/或停止或销毁,活动A已销毁,程序员可以手动调用onStart()先启动活动,然后调用onResume(),因为当活动处于已销毁状态时,活动尚未启动,而这发生在活动完全删除之前。如果删除了该活动,则需要再次创建该活动。
手动调用onStart(),我认为这是因为如果活动未启动且已创建,则onStart()将在onCreate()之后调用
如果要更新数据,请创建一个数据更新函数,并将该函数放入onResume()中。或者在onResume()中放入loadData函数
借助活动生命周期图更好地理解生命周期。KOTLIN
任何重新启动的活动都会首先执行其onResume()方法
要使用此方法,请执行以下操作:
@Override
public void onResume(){
super.onResume();
// put your code here...
}
override fun onResume() {
super.onResume()
// your code here
}
当您打开应用程序时,它将经历以下状态:
onCreate()–>onStart()–>onResume()
当您按下后退按钮并退出ap时