谁能给我一个onResume()
在Android中使用的例子?
另外,如果我想在另一个执行结束时重新启动活动,执行哪个方法 - <code>onCreate() 还是onResume()
?
如果我想更新数据,我该如何把它放进去onResume()?
谁能给我一个onResume()
在Android中使用的例子?
另外,如果我想在另一个执行结束时重新启动活动,执行哪个方法 - <code>onCreate() 还是onResume()
?
如果我想更新数据,我该如何把它放进去onResume()?
任何重新启动的 Activity 都会首先执行其onResume()方法。
要使用此方法,请执行以下操作:
@Override
public void onResume(){
super.onResume();
// put your code here...
}
重新启动应用程序将调用OnCreate()
.
暂停时继续应用程序将调用OnResume()
. 来自https://developer.android.com/reference/android/app/Activity.html#ActivityLifecycle的官方文档,这里是活动生命周期的图表。
最好的理解方法是在您的活动中覆盖所有 LifeCycle 方法,并在每个方法中放置一个断点(如果签入模拟器)或一个日志。您将知道何时调用哪个。
就像剧透一样,onCreate()
首先被调用,然后如果您通过进入主屏幕或启动另一个活动来暂停活动,则会onPause()
被调用。如果操作系统在此期间破坏了活动,onDestroy()
则被调用。如果您恢复应用程序并且应用程序已经被销毁,onCreate()
将被调用,否则onResume()
将被调用。
编辑:我忘了onStop()
,它之前被调用过onDestroy()
。
做我提到的练习,你会有更好的理解。
以前的大多数答案都很好地解释了如何、为什么以及何时使用,onResume()
但我想补充一些关于重新创建你的Activity
.
我想知道我是否想在另一个执行 onCreate() 或 onResume() 的方法结束时重新启动活动
答案是onCreate()
然而,在决定实际重新创建它时,您应该问自己有多少Activity
需要重新创建。如果它是适配器中的数据,比如说一个列表,那么您可以调用notifyDataChanged()
来adapter
重新填充,adapter
而不必重绘所有内容。
此外,如果您只需要更新某些views
但不是全部,那么调用需要更新invalidate()
的(s)可能会更有效。view
这只会重绘那些views
,并可能让您的应用程序运行得更顺畅。我希望这可以帮助你。
当您打开应用程序时,它会经历以下状态:onCreate() –> onStart() -> onResume()
当您按下返回按钮并退出应用程序时
onPaused() -> onStop() -> onDestory()
当你按下主页按钮
onPaused() -> 停止()
按下主页按钮后,再次从最近的任务列表中打开应用程序时
onRestart() -> onStart() -> onResume()
从对话框中关闭对话框或返回按钮后
onResume()
如果电话正在响铃并且用户正在使用该应用程序
onPause() -> onResume()
通话结束后
onResume()
当您的手机屏幕关闭时
onPaused() -> 停止()
当您的手机屏幕重新打开时
onRestart() -> onStart() -> onResume()
快乐编码...@Ambilpura
onResume()
是整个活动生命周期中调用的方法之一。onResume()
是在任何时候从视图中隐藏活动时调用的对应onPause()
项,例如,如果您启动一个隐藏它的新活动。onResume()
当隐藏的活动返回到屏幕上查看时调用。
您的问题是询问使用什么方法来重新启动活动。onCreate()
在首次创建活动时调用。在实践中,大多数活动通过一系列onPause()
和onResume()
调用在后台持续存在。onRestart()
一个活动只有在首先通过调用完全停止onStop()
然后恢复生命时才真正“重新启动” 。因此,如果您实际上并没有停止使用onStop()
它的活动,那么您很可能会使用onResume()
.
阅读以上链接中的 android 文档,以更好地了解不同生活方式之间的关系。无论您最终使用哪种生命周期方法,通用格式都是相同的。您必须覆盖标准方法并在注释部分包含您的代码,即您希望活动在该点执行的操作。
@Override
public void onResume(){
//will be executed onResume
}
重新查看 Android Activity 生命周期参考。有一张漂亮的图片,表格显示了调用了哪些方法。参考链接google
https://developer.android.com/reference/android/app/Activity.html
科特林
任何重新启动的 Activity 都会首先执行其 onResume() 方法。
要使用此方法,请执行以下操作:
override fun onResume() {
super.onResume()
// your code here
}
在活动开始后,重新启动(onRestart() 发生在 onStart() 之前)或暂停(onPause()),onResume() 调用。当 Activity 处于 onResume() 状态时,该 Activity 已准备好供应用用户使用。
我对活动生命周期进行了一些研究,以下是我对这个主题的理解:如果你想在另一个活动的执行结束时重新启动活动(A),可能有几种不同的情况。
另一个活动 (B) 已暂停和/或停止或销毁,并且活动 A 可能已暂停 (onPause()),在这种情况下,活动 A 将调用 onResume()
活动 B 已暂停和/或停止或销毁,活动 A 可能由于内存问题已停止 (onStop()),在这种情况下,活动 A 将首先调用 onRestart(),其次是 onStart(),然后是 onResume ()
活动 B 已暂停和/或停止或销毁,活动 A 已销毁,程序员可以手动调用 onStart() 以先启动活动,然后再调用 onResume(),因为当活动处于销毁状态时,活动已没有开始,这发生在活动被完全删除之前。如果活动被删除,则需要重新创建活动。手动调用 onStart() 我认为这是因为如果活动没有启动并且它被创建,onStart() 将在 onCreate() 之后被调用。
如果要更新数据,请创建一个数据更新函数并将该函数放在 onResume() 中。或者在 onResume() 里面放一个 loadData 函数
最好借助 Activity 生命周期图来理解生命周期。