don*_*ede 9 android overriding super
目前(Android API 17),片段super Android的参考中唯一提到的是随便通过一些代码示例(不同于Android 上的Activity Reference,它仔细记录了super需要的位置).
因此,建议根据需要搜索网络,或等待崩溃,以确定super需要呼叫的位置.我要求SO用户分享他们对哪些Fragment生命周期方法需要调用的知识super.
superonAttach()onCreate()- 大概是的,因为Activity版本需要它onCreateView() - 无论有没有好看onActivityCreated()onViewStateRestored()onStart()- 大概是的,因为Activity版本需要它onResume()- 大概是的,因为Activity版本需要它
onPause()- 大概是的,因为Activity版本需要它
onStop()- 大概是的,因为Activity版本需要它onDestroyView()onDestroy()- 大概是的,因为Activity版本需要它onDetach()
onSaveInstanceState()- 大概是的,因为Activity版本需要它
除了onSaveInstanceState需要调用 super之外的所有相应的 Activity 生命周期方法。此外:
onAttach() - 是的onActivityCreated() - 是的onViewStateRestored() - 不是 Fragment 方法onDestroyView() - 是的onDetach() - 是的 onSaveInstanceState()- 从Fragment#onSaveInstanceState它看起来像一个不所有需要调用 super 的方法在 android.app.Fragment 中共享其方法的第一行:
mCalled = true;
这样 FragmentManager 可以检查 mCalled 是否为真,并在未调用时抛出 SuperNotCalledException。请参阅FragmentManager#moveToState以查看此实现。
| 归档时间: |
|
| 查看次数: |
3714 次 |
| 最近记录: |