Android 关于生命周期方法定义的问题
我学习安卓大约6个月,在这段时间里,我描述了一些生命周期方法,比如回调,当操作系统改变状态或配置时会“触发” 问题:Android 关于生命周期方法定义的问题,android,android-lifecycle,Android,Android Lifecycle,我学习安卓大约6个月,在这段时间里,我描述了一些生命周期方法,比如回调,当操作系统改变状态或配置时会“触发” 问题: 1) 例如,用户旋转屏幕。正如我所想,当回调到来时,Android需要一些界面和活动来运行它的代码。我不确定,因为我得到了throw文档(Activity/Window/…classes),但我没有找到这个接口或类似的smth。当用户旋转屏幕时会发生什么 2) 例如,用户按下移动应用程序上的按钮并创建新活动。将调用生命周期方法,但操作系统状态或配置未更改。这意味着,我对生命周
1) 例如,用户旋转屏幕。正如我所想,当回调到来时,Android需要一些界面和活动来运行它的代码。我不确定,因为我得到了throw文档(Activity/Window/…classes),但我没有找到这个接口或类似的smth。当用户旋转屏幕时会发生什么
2) 例如,用户按下移动应用程序上的按钮并创建新活动。将调用生命周期方法,但操作系统状态或配置未更改。这意味着,我对生命周期方法的定义是错误的。如何正确描述它?帮助我理解我的第一个定义有什么问题
我知道这个链接: 有一句话:
Activity类提供了大量回调,允许Activity知道状态已更改…
但在活动类中,我看到,例如:
@MainThread
@CallSuper
protected void onCreate(@Nullable Bundle savedInstanceState) {
我还没有看到overrideword,那么Activity如何实现它呢?
有
@CallSuper
注释,但父类(包括上下文)没有与生命周期连接的代码。所以这是真正的回访吗?我不确定我是否理解你的问题,因为它是模糊的,但让我尝试解决两个具体的例子:
1) 例如,用户旋转屏幕。正如我所想,Android invoce
一些接口和活动在回调到来时运行其代码。我是
我不确定,因为我被扔了
文档(活动/窗口/…类),我没有找到这个
接口或smth喜欢它。当用户旋转
屏幕
在通常情况下,当用户旋转屏幕时,会发生“配置更改”。安卓系统对此的反应是关闭当前活动的活动
。Android在当前的活动上调用“生命周期方法”:onPause()、onStop()
和onDestroy()
。然后,Android创建一个新的活动实例
,并在该实例上调用“生命周期方法”:onCreate()、onStart()
和onResume
如果应用程序声明它希望自己处理配置更改(通过为清单中的活动指定android:configChanges=“…”
),当屏幕旋转时,android不会杀死活动。相反,Android调用“生命周期方法”:onConfigurationChanged()
在当前的活动上执行
2) 例如,用户按下其移动应用程序上的按钮并创建新应用程序
活动。将调用生命周期方法,但操作系统状态或
配置未更改。这意味着,我对生命周期的定义
方法是错误的。如何正确描述它?帮助我理解
我的第一个定义有什么问题
“生命周期方法”不仅仅指操作系统状态或配置的更改。“生命周期方法”也被调用来通知您的活动
有关活动
本身状态的更改<调用code>onCreate()
通知活动
Android刚刚创建了活动
的新实例,并且活动
应该自行初始化<调用code>onResume()
通知活动
它现在是用户将看到的当前活动
(任务中最顶端的活动
,在屏幕上可见)<调用code>onPause()
通知活动
另一个活动
将成为当前的活动
<调用code>onConfigurationChanged()
通知活动
设备上发生了配置更改(这可能是许多不同的事情之一,包括:区域设置、屏幕大小、屏幕密度、屏幕方向、键盘存在等。还有许多其他“生命周期方法”在活动的生命周期内的特定时间由Android调用