Макет, который я сейчас использую, состоит из TabLayout с Viewpager2, я пытаюсь реализовать еще один ViewPager2 для отображения нескольких изображений на одной из вкладок. Но проблема, с которой я столкнулся, заключается в том, что когда я смахиваю, я могу переключаться только между вкладками, а не переключать изображения. Любая помощь будет принята с благодарностью, спасибо!
Можно ли реализовать ViewPager2 внутри другого ViewPager2?
comment
Эта ссылка поможет вам
- person dennisrufigill   schedule 29.07.2020
Ответы (1)
Нашел решение, просто добавьте этот фрагмент кода в свою программу.
private void reduceDragSensitivity() {
try {
Field ff = ViewPager2.class.getDeclaredField("mRecyclerView") ;
ff.setAccessible(true);
RecyclerView recyclerView = (RecyclerView) ff.get(viewPager);
Field touchSlopField = RecyclerView.class.getDeclaredField("mTouchSlop") ;
touchSlopField.setAccessible(true);
int touchSlop = (int) touchSlopField.get(recyclerView);
touchSlopField.set(recyclerView,touchSlop*4);
} catch (NoSuchFieldException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
Не забудьте заменить viewPager своим именем, если хотите узнать о нем больше: https://medium.com/@al.e.shevelev/how-to-reduce-scroll-sensitive-of-viewpager2-widget-87797ad02414
person
Noxagon
schedule
29.07.2020
Я добавил это в окно просмотра сверху и во внутренний. у меня не работает.
- person Evgeny GooDi; 28.10.2020