TabFrag1のTabFrag3からTabFrag1が自動的にすべてのフラグメントをリロードします。 TabFrag1のTabfrag3から切り替えるときに、 "onCreateView"を停止する必要があります。 機能が既にロードされている場合、どのように機能を停止できますか? 私はそれがちょうど始めに働くことを望みます。スイッチフラグメントの "onCreateView"の停止方法
編集:
MainActivity:
public class SectionsPagerAdapter extends FragmentPagerAdapter {
public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
switch (position) {
case 0:
TabFragment1 tab1 = new TabFragment1();
return tab1;
case 1:
TabFragment2 tab2 = new TabFragment2();
return tab2;
case 2:
TabFragment3 tab3 = new TabFragment3();
return tab3;
default:
return null;
}
}
}
TabFragment1
public class TabFragment1 extends Fragment {
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View inflatedView = inflater.inflate(R.layout.tab_fragment_1, container, false);
final ListView list= (ListView) inflatedView.findViewById(R.id.list);
new function();//this function load json data
return inflatedView;
}
何度も何度もこのonCreateView課金データ...
編集2: 私はここに解決策を見つけました:https://stackoverflow.com/a/36518677/6910082
助けてくれるほどの情報はありません。複数のフラグメントを持つビューページャーを使用している場合は、おそらくsetOffscreenPageLimit()を試してください。 –
タブに移動するときにページをリフレッシュしないようにしたいですか? – Naz141
コードを見てみてください。 "タブにナビゲートするときにページをリフレッシュしないようにしたいのですか?" =>はい、このフラグメントをリフレッシュする必要はありません。 – Helpme