【发布时间】:2016-08-22 10:47:32
【问题描述】:
我想知道为什么它需要putInt 成束。当我滑动到其他选项卡时,我的片段是重新创建还是使用了最后创建的?为什么这里使用了空白构造函数?
public class SectionsPagerAdapter extends FragmentPagerAdapter {
public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
switch (position) {
case 0 : return fragment_zg.newInstance(position + 1);
case 1: return fragment_Uni.newInstance(position+1);
default: return fragment_zg.newInstance(position + 1);
}
}
这是我的Fragment
public class fragment_Uni extends Fragment {
private static final String ARG_SECTION_NUMBER = "section_number";
public fragment_Uni() {}
public static fragment_Uni newInstance(int sectionNumber) {
fragment_Uni uni_fragment = new fragment_Uni();
Bundle args = new Bundle();
args.putInt(ARG_SECTION_NUMBER, sectionNumber);
uni_fragment.setArguments(args);
return uni_fragment;
}
}
【问题讨论】:
-
您要求哪个参数?
-
抱歉,Bundle args = new Bundle(); args.putInt(ARG_SECTION_NUMBER, sectionNumber); uni_fragment.setArguments(args);
-
如果不使用参数,则无需使用。对于设备方向更改,您必须向片段管理器提供一个空/空白构造函数。不管你是否改变了方向。
标签: android android-fragments android-viewpager android-tablayout