我按照此tutorial创建了一个应用程序,其中包含操作栏中的四个标签[tab1] [tab2] [tab3] [tab4]。
当我从标签更改为最近的标签时,目标标签不会刷新,例如从1-> 2,3-> 4或3-> 2,但问题是当我从1更改时 - > 3或4,2-> 4 ...(远选项卡)目标选项卡刷新,如何禁用此功能?
答案 0 :(得分:0)
在教程代码中,每次进入后台时都会生成一个新的片段实例。
switch (index) {
case 0:
// Top Rated fragment activity
return new TopRatedFragment();
case 1:
// Games fragment activity
return new GamesFragment();
case 2:
// Movies fragment activity
return new MoviesFragment();
}
而不是在顶级创建片段i,创建一旦你开始上课。
public class TabsPagerAdapter extends FragmentPagerAdapter {
TopRatedFragment frag1;
GamesFragment frag2;
MoviesFragment frag3;
public TabsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int index) {
switch (index) {
case 0:
if(frag1 == null)
frag1 = new TopRatedFragment();
return frag1;
case 1:
//repeat same here
case 2:
//repeat same here
}
这样,如果片段的实例已经存在,那么它将返回该实例而不是新实例。