違いは何ですかonCreate()、onCreateView()とonActivityCreated()彼らはそれぞれのために使用される断片で、何が?
違いは何ですかonCreate()、onCreateView()とonActivityCreated()彼らはそれぞれのために使用される断片で、何が?
回答:
onCreate():
onCreate()中にメソッドがFragmentされた後に呼び出さActivityさんonAttachFragment()が、その前FragmentのonCreateView()。
このメソッドでは、変数を割り当てたり、Intentエクストラを取得したり、ビュー階層に関係のないもの(つまり、非グラフィカルな初期化)を取得したりできます。ときに、このメソッドを呼び出すことができるからであるActivityのがonCreate()終了していない、とここでビュー階層にアクセスしようとしているので、クラッシュすることがあります。
onCreateView():
後onCreate()(で呼び出されるFragment)、FragmentさんがonCreateView()呼ばれています。View変数を割り当てて、グラフィカルな初期化を行うことができます。Viewこのメソッドからを返すことが期待されており、これがメインUIビューFragmentですが、レイアウトやグラフィックを使用しない場合は、戻ることができnullます(オーバーライドしない場合、デフォルトで発生します)。
onActivityCreated():
名前の状態としては、これがされた後に呼び出さActivityさんがonCreate()完了しました。後onCreateView()に呼び出され、主に最終的な初期化(UI要素の変更など)に使用されます。
要約すると...
...それらはすべてで呼び出されますFragmentが、異なるときに呼び出されます。任意の非グラフィカルinitialisationsを行うために、最初に呼び出されます。次に、で使用する変数を割り当てて宣言できます。その後、を使用して、すべてが完了したら、最終的な初期化を行います。onCreate()ViewonCreateView()onActivityCreated()
あなたは公式Androidのドキュメントを表示したい場合は、ここで見つけることができます:
-
-
-onCreate()onCreateView()onActivityCreated()
Stack Overflowには、少し異なりますが、あまり開発されていない質問/回答もあります。
onCreateViewます。
簡潔で絵画的な答えを探している人のために:
https://hanaskuliah.wordpress.com/2015/12/07/android-5-development-part-6-fragment/
そして、
onActivityCreated()フラグメントバージョン1.3.0-alpha02として廃止されました
onActivityCreated()メソッドは廃止されました。フラグメントのビューに触れるコードはonViewCreated()(onActivityCreated()の直前に呼び出されます)で行う必要があり、他の初期化コードはonCreate()で行う必要があります。特にアクティビティのonCreate()が完了したときにコールバックを受け取るには、onCycle()でアクティビティのライフサイクルにLifeCycleObserverを登録し、onCreate()コールバックを受け取ったら削除する必要があります。
詳細情報はここにあります