В Dashboard Activity есть фрагмент сверху, который содержит 3 фрагмента в виде пейджеров внутри. Пейджеры вида становятся пустыми и не отвечают (как показано на втором снимке экрана) в следующих случаях:
- Когдаприложение загружается из backstack
- Когда параметр шрифта изменяется, когда приложение находится в фоновом режиме, и вызывается снова из стека приложений
- Когда щелкает уведомление о моем приложении и действие click перенаправляет на панель действий
Код для фрагмента для вкладок:
public class MainActivityGraphViewPager extends Fragment {
public MainActivityGraphViewPager() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View v = inflater.inflate(R.layout.fragment_main_activity_graph_pager, container, false);
ViewPager viewPager = v.findViewById(R.id.fgraph_pager);
TabLayout tabx = v.findViewById(R.id.tab_layout_dashboard);
tabx.setupWithViewPager(viewPager, true);
viewPager.setAdapter(new SectionPagerAdapterFeaturedgraphs(getActivity().getSupportFragmentManager()));
viewPager.setCurrentItem(1, false);
viewPager.setOffscreenPageLimit(3);
return v;
}
private class SectionPagerAdapterFeaturedgraphs extends FragmentPagerAdapter {
public SectionPagerAdapterFeaturedgraphs(FragmentManager supportFragmentManager) {
super(supportFragmentManager);
}
@Override
public Fragment getItem(int position) {
switch (position) {
case 0:
return new ExpenseManagerPieChart();
case 1:
return new BudgetandFitness();
case 2:
return new ExpendsFragments();
default:
return null;
}
}
@Override
public int getCount() {
return 3;
}
}}
MainActivityGraphViewPager.class вызывается в onCreate () Dashboard Activity:
MainActivityGraphViewPager mainActivityGraphPager=new MainActivityGraphViewPager();
this.getSupportFragmentManager().beginTransaction().replace(R.id.graph_pagers, mainActivityGraphPager).commit();
Какие могут быть возможные решения для устранения этой неотзывчивости?