違いは何ですか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()
View
onCreateView()
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()コールバックを受け取ったら削除する必要があります。
詳細情報はここにあります