[onActivityCreated
似乎是指“该片段回调在活动创建后立即执行。。。我的意思是,在将片段正确附加到活动之后。在这里,您可以安全地调用getActivity
,它不会返回null,除非由于某些特殊原因活动是null
“。
但是,我看到即使在onAttach
之后也调用了片段回调OnCreate
,这意味着该片段已附加到已创建的活动上。
一个片段(和一个片段对话框,经常被遗忘)的完整工作流程是:onAttach
-> onCreate
-> onCreateView
-> onActivityCreated
。因此,在这4种方法的每种方法中(也许我不知道onAttach
都不是),该活动通常不为null并附加到该片段。
所以我的问题是:为什么实际上实际上已经创建了该回调onActivityCreated
并将其附加到片段3回调上?
所以基本上在onAttach()中,我们得到的确认是活动是附加到我的片段上的,我可以使用getActivity()来获取诸如资源之类的东西,
getActivity().getResources.getDrawable(R.drawable.abc)
但是如果您想获取活动的xml中夸大的视图,例如,如果您要访问,则>]
getActivity().findViewById(R.id.Myelement)
您在这里可能会为空,因此OnActivtyCreated()确保活动的视图已膨胀,您现在可以访问活动的视图(活动的视图已创建(onActivityCreated))