【发布时间】:2020-12-02 09:00:27
【问题描述】:
我正在使用 4 个片段和视图寻呼机 2。 并突然得到这个错误。崩溃并不总是出现。我已经搜索了其他问题,但找不到有关 viewpager2 的任何解决方案。
crash report from mobile 无法获取完整图片
setUpViewPager() 从 MainActivity
的 onStart() 调用它public void setupViewPager() {
MainActivityViewPager adapter = new MainActivityViewPager(getSupportFragmentManager(), getLifecycle());
binding.viewpager.setUserInputEnabled(false);
binding.viewpager.setOffscreenPageLimit(3);
binding.viewpager.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() {
@Override
public void onPageSelected(int position) {
if (prevMenuItem != null) {
prevMenuItem.setChecked(false);
} else {
binding.bottomNavigation.getMenu().getItem(0).setChecked(false);
}
binding.bottomNavigation.getMenu().getItem(position).setChecked(true);
prevMenuItem = binding.bottomNavigation.getMenu().getItem(position);
}
});
binding.viewpager.setAdapter(adapter);
}
MainActivityViewPager
public class MainActivityViewPager extends FragmentStateAdapter {
public MainActivityViewPager(@NonNull FragmentManager fragmentManager, @NonNull Lifecycle lifecycle) {
super(fragmentManager, lifecycle);
}
@NonNull
@Override
public Fragment createFragment(int position) {
switch (position) {
case 0:
return new HomeFragment();
case 1:
return new ProgressFragment();
case 2:
return new MoreFragment();
case 3:
return new ProfileFragment();
}
return null;
}
@Override
public int getItemCount() {
return 4;
}
谁能给我一个解决方案?这目前正在生产应用程序中发生,我的头上有红色警报。 谢谢大家
【问题讨论】:
-
"突然出现这个错误。" - 哪个错误?发布堆栈跟踪
-
我无法从 android studio 获取堆栈跟踪。但我设法从应用程序崩溃的手机获得了一份报告。请检查问题中的链接
标签: android fragmentmanager android-viewpager2