ActivityがFragmentを管理するプロセス、由来と相互関係

2700 ワード

1.管理の理解:Activityには独自のViewがあり、Fragmentにも独自のViewがありますが、Fragment自体は画面に表示する能力を持っていません.Activityには、SetContentView()メソッドがあります.Fragmentは、Activityのview階層に自身のViewを埋め込むことで表示されます.ActivityのViewは、FragmentのViewを配置する場所を提供する必要があります.
UI Fragment:ユーザインタフェースを管理するfragmentをUI Fragmentと呼ぶ.UI Fragmentの作成:
  • レイアウトファイル内のコンポーネントを定義し、組立インタフェースは以下のように理解する(layoutフォルダ内のxmlビューファイル)
  • Fragmentクラスを作成し、そのviewを定義するレイアウトは、(Fragmentから継承されたクラスを作成し、onCreateView()でLayoutInflaterによってxmlレイアウトファイルをViewタイプのインスタンスにインスタンス化する)レイアウトファイルをjava Classに変換して使用する必要があるため、LayoutInflaterによってViewタイプのjava classに変換する.記憶方法:layoutフォルダをLayoutInflaterと関係を作成します.
  • コード方式により、レイアウトファイルに含まれるコンポーネントをインスタンス化して理解する(コンポーネント=view.findViewById、コンポーネントを追加するイベントリスニングaddListener)
  • FragmentActivity:
  • FragmentActivity is a special activity provided in the Support Library to handle fragments on system versions older than API level 11. If the lowest system version you support is API level 11 or higher, then you can use a regular Activity. 2.1理由GoogleはAPI 11レベルにFragmentを導入し、古いデバイスとの互換性を保証するためにサポートライブラリを導入し、サポートライブラリは完全なfragmentの関連クラスの実現を提供し、最低互換API 4レベルである.
  • 関係support.V 4は、FragmentとFragmentActivityの2つの重要なクラスを提供します.fragmentを使用するには、activityがfragmentを管理する方法を知っている必要があります.FragmentActivityは、サポートされているFragmentの管理方法を知っています.support.V 7提供:AppCompatActivity
  • FragmentManagerの入手方法Android 3.0以下:getSupportFragmentManager()Android 3.0以上:getFragmentManager()
  • some others: Activity is the base class of all other activities, I don't think it will be deprecated. The relationship among them is:Activity<<<
    The differences between them:
  • Activity is the basic one.
  • Based on Activity, FragmentActivity provides the ability to use Fragment.
  • Based on FragmentActivity, AppCompatActivity provides features to ActionBar.

  • ActionBarActivityは時代遅れで、親AppCompatActivityに取って代わられているので、ActiveがAppCompatActivityを継承すればOKです.
  • 回炉強固再強固依存の意味構造:Mavenを用いた座標パターン:groupId:artifactId:version
  • dependencies{
      compile 'com.android.support:support-v4:22.+'
    }
    

    groupId:groupIdは通常クラスライブラリのベースパッケージ名であり、com.android.support artifactId:(artifact:n.人工製品、手工芸品、加工品;石器;)artifactIdは、前例のsupport-v 4のようなパッケージ内の特定のライブラリ名です.com.android.supportパッケージには、support-v 7、support-v 13、appcompat-v 7など、さまざまなライブラリがあります.Googleはbasename-vXモードをサポートライブラリの命名規則として使用します.-vXは、サポートされている最下位のAPIレベルを指します.version:versionとは、クラスライブラリのバージョン番号を指します.+番号で特定のバージョンをぼやかすことができます.