0

ViewPager/PageIndicator を介して Fragments を使用する簡単な例を探しています。私が見つけたすべてのチュートリアル/例は、単一のフラグメントに渡される生成されたテキストまたは画像を使用して、凝った説明を提供します。

2 つの個別のフラグメント (xml-layout-part を含む) だけで短い例を提供できる人はいますか?

例やチュートリアルへのリンクも問題ありません。:-)

4

2 に答える 2

5

フラグメントをホストする MainActivity で、getItem() メソッドでフラグメントの新しいインスタンスを返すフラグメント アダプター クラスを作成する必要があります。次の例を見てください。

public class MainActivity extends FragmentActivity {

static int numberOfPages = 2;
ViewPager myViewPager;
MyFragmentPagerAdapter myFragmentPagerAdapter;
    String text = "test";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main_activity);

    myViewPager = (ViewPager) findViewById(R.id.view_pager);
    myFragmentPagerAdapter = new MyFragmentPagerAdapter(getSupportFragmentManager());
    myViewPager.setAdapter(myFragmentPagerAdapter);
}

// Adapters
private static class MyFragmentPagerAdapter extends FragmentPagerAdapter {
    public MyFragmentPagerAdapter(FragmentManager fm)   {
        super(fm);
    }

    @Override
    public Fragment getItem(int index) {

        return PageFragment.newInstance(text);
    }

    @Override
    public int getCount() {
        return numberOfPages;
    }
}

}

// フラグメント クラス

public class PageFragment extends Fragment {

TextView tv;

public static PageFragment newInstance(String text) {
    PageFragment pageFragment = new PageFragment();
    Bundle bundle = new Bundle();
    bundle.putString("test", text);
    pageFragment.setArguments(bundle);

    return pageFragment;
}

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)   {
    View view = inflater.inflate(R.layout.fragment, container, false);
    tv = (TextView) view.findViewById(R.id.tv);
    tv.setText(getArguments().getString("test");        

    return view;
}
于 2013-02-25T17:55:18.037 に答える
4

Eclipse を開きます --> 新しい Android アプリケーション プロジェクト --> [次へ] を押します --> アプリケーション名を入力し、最小 SDK で 4.0 以上のものを選択します --> [次へ] を 3 回押します

Navigation Type の New Blank Activity で、「Swipe Views + Title Strip」を選択 --> 終了

これは、ViewPager の非常に素晴らしく単純な例です。

于 2013-02-25T17:41:05.960 に答える