Итак, у меня есть viewPager с 4 представлениями, доступ к которому я могу получить, проведя пальцем влево или вправо. Мой адаптер -
public class MyAdapter extends FragmentStatePagerAdapter {
public MyAdapter(@NonNull FragmentManager fm, int behavior) {
super(fm, behavior);
}
@Nullable
@Override
public Fragment getItem(int i) {
switch (i){
case 0:
return new FirstFrag();
case 1:
return new SecondFrag();
case 2:
return new ThridFrag();
case 3:
return new FourthFrag();
default:
return null;
}
}
@Override
public int getCount() {
return 3;
}
}
Так как getCount () возвращает 3, следовательно, я могу видеть только три представления, что хорошо, и это прекрасно работает, но я go для четвертого представления, возможно, программно, за пределами фиксированного числа.
Почему я это делаю? Я пытаюсь сделать вид доступным, когда пользователь нажимает кнопку на третьем представлении, но не могу получить к нему доступ, проводя пальцем. Я попытался запустить новое действие, но проблема заключалась в том, что мои данные модели представления liveata не могли общаться с новым действием, потому что два действия могут совместно использовать модель представления, следовательно, этот подход.
Мое решение было, подход, который я упомянул выше.