0

ここでいくつかのサンプルコードに従っています。フラグメントをインスタンス化して ViewPager に追加する手順を理解しようとしています。

fragment.add() が ViewPager にフラグメントを追加することを理解していると思います。Fragment.instantiate() が何をするのか理解できません。Android のドキュメントによると、インスタンス化には「コンテキスト」が必要です。どういう意味ですか?

private void setupViewPager() {

    List<Fragment> fragments = new Vector<Fragment>();
    fragments.add(Fragment.instantiate(this, FragmentTab1.class.getName()));
    fragments.add(Fragment.instantiate(this, FragmentTab2.class.getName()));
    fragments.add(Fragment.instantiate(this, FragmentTab3.class.getName()));

    this.mPagerAdapter  = new PagerAdapter(super.getSupportFragmentManager(), fragments);
    //
    this.mViewPager = (ViewPager)super.findViewById(R.id.viewpager);
    this.mViewPager.setAdapter(this.mPagerAdapter);
    this.mViewPager.setOnPageChangeListener(this);
}
4

1 に答える 1

0

コンテキストはクラスローダを取得するために使用されます。つまり、パッケージからコンテナ アクティビティを取得するために使用されるクラスローダです。

http://developer.android.com/reference/android/app/Fragment.html#instantiate(android.content.Context、java.lang.String、android.os.Bundle )

于 2012-09-21T21:37:02.047 に答える