首页 > 试题广场 >

有关Activity生命周期描述正确的是

[不定项选择题]
有关Activity生命周期描述正确的是
  • 设置Activity的android:screenOrientation="portrait"属性时,切换屏幕横纵方向时不会重新调用各个生命周期,只会执行onConfigurationChanged方法
  • 未设置Activity的android:configChanges属性,切换屏幕横纵方向时会重新调用onCreate()方法
  • 当再次启动某个launchMode设置为singletask的Activity,它的onNewIntent()方法会被触发
  • 用户正在操作某个Activity,这时如果其他应用程序需要内存,系统会将用户当前操作的Activity强制关闭
BC
launchMode singleTask 的时候,通过 Intent 启到一个 Activity, 如果系统已经存在一个实例,系统就会将请求发送到这个实例上,但这个时候,系统就不会再调用通常情况下我们处理请求数据的 onCreate 方法,而是调用 onNewIntent 方法
发表于 2015-03-26 14:06:04 回复(0)
(BC)
A 设置Activity的android:screenOrientation="portrait"属性时,无法切换横竖屏,因此不但不会重新调用各个生命周期方法,而且onConfigurationChanged()方法也不会执行。
 
B 未设置Activity的android:configChanges属性,API上这样说"the activity will be restarted if any of these configuration changes happen in the system.";如何配置有改变,就会重启activity
 
C launchMode为singleTask的时候,通过Intent启到一个Activity, 如果系统已经存在一个实例,系统就会将请求发送到这个实例上, 但这个时候,系统就不会再调用通常情况下我们处理请求数据的onCreate方法,而是调用onNewIntent方法
 
D 用户正在操作某个Activity,这时如果其他应用程序需要内存。 此时的Activity是Foreground process,应该按照Empty process,Background process,Service process,Visible process顺序kill,最后才是前台进程。
 

发表于 2015-07-23 11:57:21 回复(14)
如果设置了android:configChanges = "orientation|screenSize",并在activity中复写onConfigurationChanged方法,就不会重新走生命周期,执行复写方法中方法。
发表于 2015-08-21 19:19:03 回复(0)
这题很搞笑, B 未设置Activity的android:configChanges属性,横竖屏就会重建? 那如果我设置了Activity 的android:screenOrientation="portrait"属性呢?岂不是AB矛盾
发表于 2019-04-18 22:34:01 回复(0)
(BC) A 设置Activity的android:screenOrientation="portrait"属性时,无法切换横竖屏,因此不但不会重新调用各个生命周期方法,而且onConfigurationChanged()方法也不会执行。   B 未设置Activity的android:configChanges属性,API上这样说"the activity will be restarted if any of these configuration changes happen in the system.";如何配置有改变,就会重启activity   C launchMode为singleTask的时候,通过Intent启到一个Activity, 如果系统已经存在一个实例,系统就会将请求发送到这个实例上, 但这个时候,系统就不会再调用通常情况下我们处理请求数据的onCreate方法,而是调用onNewIntent方法   D 用户正在操作某个Activity,这时如果其他应用程序需要内存。 此时的Activity是Foreground process,应该按照Empty process,Background process,Service process,Visible process顺序kill,最后才是前台进程。  
发表于 2017-03-22 15:36:02 回复(0)
设置Activity的android:screenOrientation="portrait"属性时,无法切换横竖屏,因此不但不会重新调用各个生命周期方法,而且onConfigurationChanged()方法也不会执行。
发表于 2016-07-26 00:13:14 回复(0)
C不准确,如果是在其他任务栈中启动,还是会新建一个activity的
发表于 2020-07-18 09:05:59 回复(0)
C是一般情况,第二次通过startActivity启动,如果第二次通过startActivityForResult启动,依然是走新建activity的流程。
发表于 2019-02-27 11:15:04 回复(0)
用户正在操作某个Activity,这时如果其他应用程序需要内存。此时的Activity是Foreground Process,应该按照Empty Process,Background Process,Service Process,Visible Process顺序杀死,最后才是前台进程。
发表于 2018-08-26 10:44:23 回复(0)

BC


launchMode

singleTask

的时候,通过

Intent

启到一个

Activity,

如果系统已经存在一个实例,系统就会将请求发送到这个实例上,但这个时候,系统就不会再调用通常情况下我们处理请求数据的

onCreate

方法,而是调用

onNewIntent

方法

发表于 2018-08-24 07:32:13 回复(0)
重新绘制不会执行oncreate方法,其它生命周期都会被执行
发表于 2017-05-19 21:16:05 回复(0)
第一题验证过,onconfigurationchanged和生命周期都不会调用
发表于 2017-03-02 08:40:45 回复(0)
BC
A的话设置后一直是竖屏
B不解释
C的话当再次启动某个launchMode设置为singletask的Activity,若任务栈中存在其实例则会弹出其上所有其他活动并调用onNewIntent()方法,不存在则会检查创建任务栈并创建activity实例入栈
发表于 2017-02-04 15:29:04 回复(0)
d肯定错的,内存不够也不至于关正在使用的activity,当然除非你用华为手机而且暂时熄屏
发表于 2016-09-26 01:24:48 回复(2)
BC A不清楚什么意思,求大神解释。
发表于 2015-10-04 14:43:04 回复(0)
a
发表于 2015-09-20 00:40:37 回复(0)
B
C不是很清楚
发表于 2015-04-05 20:06:07 回复(0)