0

以下を使用して、アクティビティ内に表示するフラグメントを選択します....

    public class SectionsPagerAdapter extends FragmentPagerAdapter {

    public SectionsPagerAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public Fragment getItem(int position) {

        Fragment fragment;
        switch (position) {
        case 0:
            fragment = new Fragment1();
            break;
        case 1:
            fragment = new Fragment2();
            break;
        case 2:
            fragment = new Fragment3();
            break;
        default:
            fragment = null;
            break;
        }
        return fragment;

    }

... 空白で作業中のフラグメントは次のようになります....

public class Fragment2 extends Fragment {

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View root = inflater.inflate(R.layout.fragment_dod, container, false);
// Do Stuff Here
        return root;
    }

    @Override public void onSaveInstanceState(Bundle outState) {
        super.onSaveInstanceState(outState);
        // Save some state!
      }
}

タイプの不一致による SectionsPagerAdapter エラー: 次のような ListFragment を使用する場合、Fragment2 から Fragment に変換できません.....

public class Fragment2 extends ListFragment {
  DemoAdapter adapter=null;

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

    setRetainInstance(true);

    if (adapter==null) {
      ArrayList<Integer> items=new ArrayList<Integer>();

      for (int i=0;i<25;i++) { items.add(i); }

      adapter=new DemoAdapter(getActivity(), items);
    }
    else {
      adapter.startProgressAnimation();
    }

    setListAdapter(adapter);
  }
}

私はこれを回避する方法を探していました。そうする方法と、可能であれば説明を教えてください。その理由を理解し、将来それを回避することができますか?

ありがとう

4

1 に答える 1