【发布时间】:2019-04-17 04:41:03
【问题描述】:
我刚刚开始体验 Android 开发(我现在正在看教程)。我查看了 Android 开发者页面上的活动生命周期,我意识到活动总是通过onResume() 方法才能对用户可见。假设我将在活动中不使用任何片段,这是否意味着大部分代码逻辑都应该在 onResume() 方法内,而我应该在一开始就在 onCreate() 内膨胀一次布局?
【问题讨论】:
-
这真的取决于您对活动的期望。每次显示活动时,您是否有需要完成的工作?还是只在活动创建时进行一次?
-
一次性初始化在 onCreate 中进行,有时东西的初始化可以在 onResume 中进行,这取决于 Luca 所说的您需要什么。大多数代码通常位于事件侦听器中,例如用于 UI 单击事件的 onClick。 onResume 通常保留用于注册侦听器和回调,除非您正在做一些特别的事情。在很多情况下,您的活动不会仅仅因为不需要而覆盖 onResume
-
资源和变量的初始化应该在onCreate()中完成。因为,当 Activity 进入 onPause() 或 onStop() 时,将调用 onResume() 并且将调用相同的 variables and resource初始化和内存将被浪费。如果您的逻辑每次在活动进入后台并返回前台时运行,则根据优先级将逻辑写入 onStart() 和 onResume()。跨度>
-
谢谢大家,我现在更明白了。只是初学者的误解
标签: android android-activity activity-lifecycle