【发布时间】:2016-05-28 07:20:54
【问题描述】:
每当创建一个新的 Activity 时,onCreate 就会被调用。其次是onStart。当活动回到屏幕上时,再次调用onStart。我知道这个基本原理。但是,启动活动时的实际区别是什么。
我的意思是说,当您单击当前活动上的某个对象时,您会通过startActivity() 方法启动一个新活动,其意图是新活动。现在 onCreate() 将被调用第二个活动,然后是 onStart()。用户何时可以看到活动?在onCreate 之后还是onStart 之后?如果它在onCreate 之后和onStart 之前可见,并且我在onStart() 中进行了一些操作,那么它将减少用户单击对象和屏幕上弹出屏幕之间的延迟。
如果我将一些数据绑定移动到 onStart 是否会干扰棒棒糖及更高版本上的默认 Activity 转换(我不确定)?
将一些代码移动到onStart 以减少点击和用户屏幕上显示的新活动之间的延迟是否是个好主意?如果是,什么样的代码可以安全地移动到onStart?比如数据绑定、数据库查询等?
任何指导将不胜感激。
【问题讨论】:
-
您的活动内容将在 onResume() 中可见。
-
@Kirtan403 onResume() 上用户可见的活动
-
所以看起来活动在 onStart 之后可见,并且 onResume 将在 onStart 之后调用。因此 onStart 将在活动在屏幕上可见之前被调用。
标签: android performance oncreate onstart