У меня есть ViewPager
внутри Activity
. ViewPager
находится внутри ScrollView
. Во фрагменте у меня есть RecyclerView
. Когда я прокручиваю элемент переработчика, мне нужно отключить прокрутку активности. Как мне этого добиться. Я ищу, но ничего не нашел. Пожалуйста, помогите мне в этом. Я застрял на некоторое время в этом вопросе.
You cannot disable the scrolling of a ScrollView. You would need to extend to ScrollView and override the onTouchEvent method to return false when some condition is matched.
Подробнее здесь: Отключить ScrollView программно?
Дополнительная информация о ViewPager: Можно ли отключить прокрутку на ViewPager
Пожалуйста, попробуйте requestDisallowInterceptTouchEvent в представлении, как показано ниже.
yourviewpager.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
recyclerview.requestDisallowInterceptTouchEvent(true);
//or you can apply on ScrollView also
//scrollview.requestDisallowInterceptTouchEvent(true);
return false;
}
});
vpChatType.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View view, MotionEvent motionEvent) { my_scrollview.requestDisallowInterceptTouchEvent(true); // или вы также можете применить к ScrollView //scrollview.requestDisallowInterceptTouchEvent(true); return ложный; } });
Хорошо, позвольте мне попробовать с вашим же сценарием.
Добавьте этот тег в свой RecyclerView в макете XML.
android:overScrollMode = "always"
На самом деле я видел ссылку, которую вы предоставили, но дело в прокрутке, у меня есть viewpager. И recyclerview находится внутри фрагмента. тогда как мне отключить прокрутку активности?