gpt4 book ai didi

android - 如何解决屏幕旋转时 viewpager 中的选项卡覆盖的问题?

转载 作者:行者123 更新时间:2023-11-30 02:02:55 24 4
gpt4 key购买 nike

在这里,我有一个带有 ViewPager 的 Activity ,它有 4 个选项卡,这是 Activity 屏幕截图链接。

1

这是垂直屏幕时选项卡 4 的屏幕截图。当activity打开时,我切换到第四个选项卡,然后切换到第二个,旋转屏幕,第四个选项卡的一部分会覆盖在第二个选项卡上,但是当切换到第一个和第三个时,它不会发生,图片如下:

标签 4:

2

选项卡 1:

3

标签 2:

4

我该如何解决这个问题?

viewpager的适配器如下:

public class MainPageFragmentPageAdapter extends FragmentPagerAdapter {

SparseArray<Fragment> fragmentSparseArray = new SparseArray<Fragment>();

private Fragment currentSelectedFragment;

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

@Override
public Fragment getItem(int position) {
if (fragmentSparseArray.get(position) == null) {
Fragment fragment = null;
switch (position) {
case 0:
fragment = new NewHomePageFragment();
break;
case 1:
fragment = new NewDiscoverFragment();
break;
case 2:
fragment = new NewUserMessageFragment();
break;
case 3:
fragment = new NewUserDetailFragment();
}
fragmentSparseArray.put(position, fragment);
}
currentSelectedFragment = fragmentSparseArray.get(position);
return currentSelectedFragment;
}

@Override
public void destroyItem(ViewGroup container, int position, Object object) {
}

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

public Fragment getCurrentSelectedFragment() {
return currentSelectedFragment;
}

}

任何你想看的代码请在下面评论。

最佳答案

正如你所说,当分页器不可见时你不会销毁Item,所以它仍然在内存中,并重绘它

关于android - 如何解决屏幕旋转时 viewpager 中的选项卡覆盖的问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31209022/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com