Android Fragment onCreateView与onActivityCreated

时间:2011-11-07 19:00:52

标签: android android-fragments lifecycle android-activity android-lifecycle

我知道片段的视图层次结构必须在onCreateView中膨胀,但onCreateView还有什么其他功能可以等待onActivityCreated?我当前的实现对所有内容使用单独的活动,并且典型的活动在其onCreate方法中完成大部分工作,包括膨胀视图,设置内容视图,使用数据初始化各种小部件,设置监听器等。

那么这可能会全部转移到onCreateView上,还是应该将某些函数放入onActivityCreated方法中呢?

2 个答案:

答案 0 :(得分:75)

如果您的视图是静态的,则无需将任何代码移动到onActivityCreated方法。但是当您(例如,从适配器填充一些列表)时,您应该在onActivityCreated方法中执行此操作,以及在setRetainInstance用于执行此操作时还原视图状态。

访问父活动的视图层次结构也必须在onActivityCreated中完成,而不是更快。

答案 1 :(得分:0)

onActivityCreated()deprecated in fragment 1.3.0-alpha02,建议使用onViewCreated()代替。视图已在此处创建,您可以设置侦听器,从ViewModel观察LiveData,初始化recyclerView等。

为了更好地理解,您可以看一下我的博客文章,我在137秒内描述了Android Fragment lifecycle