如何使用onResume()?
任何人都可以给我一个例子,在android中使用onResume()
。 我想知道如果我想重新启动一个其他什么方法执行onCreate()
或onResume()
的exectuion结束活动,如果我想更新数据如何把它onResume()?
任何Activity都会首先执行 onResume()方法。
如果你用下面的方法使用这个方法 。
@Override public void onResume(){ super.onResume(); // put your code here... }
如果你想重新启动应用程序,你必须调用OnCreate()
。
如果您需要继续暂停的应用程序,您将自动转到OnResume()
。 看看下面的图片
。
该图像显示了android生命周期这就是你需要的。
理解最好的方法是让所有的LifeCycle方法在你的活动中重写,并放置一个断点(如果在模拟器中签入)或者在每一个中都有一个Log。 你会知道哪一个被调用。
就像扰stream板, onCreate()
首先被调用,然后如果你通过主屏幕或启动另一个活动暂停活动, onPause()
被调用。 如果OS同时破坏活动, onDestroy()
被调用。 如果你恢复应用程序,应用程序已经被破坏, onCreate()
将被调用,否则onResume()
将被调用。
编辑:我忘了onStop()
,它会在onDestroy()
之前调用。
做我提到的练习,你会有更好的理解。
大多数以前的答案做了很好的解释如何,为什么,什么时候使用onResume()
但我想补充一些关于重新创build您的Activity
。
我想知道,如果我想重新开始执行一个其他的方法执行onCreate()或onResume()
答案是onCreate()
然而,当决定实际重新创build它时,你应该问自己需要重新创build多lessActivity
。 如果它是适配器中的数据,比如列表,那么可以调用adapter
上的notifyDataChanged()
来重新填充adapter
,而不必重绘所有内容。
此外,如果您只需要更新某些views
但不是全部,那么在需要更新的view
上调用invalidate()
可能会更高效。 这只会重新绘制这些views
并可能允许您的应用程序运行更顺利。 我希望这可以帮助你。
onResume()
是整个活动生命周期中调用的方法之一。 onResume()
是onPause()
,在任何时候一个活动被隐藏起来,例如,如果你开始一个隐藏它的新活动, onPause()
就会被调用。 当被隐藏的活动回到屏幕上时, onResume()
被调用。
你问的问题是用什么方法重新开始一个活动。 在第一次创build活动时调用onCreate()
。 在实践中,大多数活动通过一系列onPause()
和onResume()
调用持续在后台。 一个活动只有在onRestart()
被调用onStop()
完全停止后才能重新启动, onRestart()
。 因此,如果你实际上并没有使用onStop()
来停止活动,那么你最可能使用onResume()
。
在上面的链接中阅读android doc以更好地理解不同生活方式之间的关系。 不pipe使用通用格式的生命周期方法是相同的。 您必须重写标准方法并包含您的代码,也就是您想要在该点进行的活动,请参阅注释部分。
@Override public void onResume(){ //will be executed onResume }
重新审查android Activity Lifecycle引用。 有一个很好的图片和表格显示什么方法被调用。
https://developer.android.com/reference/android/app/Activity.html