Размах просмотра в Android конфликтует с прокруткой - PullRequest
0 голосов
/ 19 января 2019

У меня есть три фрагмента в окне просмотра, и все три имеют вид переработчика на них. Но при перелистывании свиток представления переработчика конфликтует с ним. Следовательно, только после 3-го или 4-го пролистывания фрагмент сильно ударился, или иногда мне приходится сильно ударить от начала экрана до конца, а затем ударить фрагмент. Я хочу гладко ударить UX. Может кто-нибудь, пожалуйста, помогите мне с этим вопросом. Спасибо!

1 Ответ

0 голосов
/ 19 января 2019

Класс ViewGroup имеет метод с именем onInterceptTouchEvent(ev: MotionEvent), который возвращает значение Boolean.Если вы хотите, чтобы ваш вид «украл» сенсорное событие, вы должны вернуть true и false в противном случае.

Например, если вы хотите, чтобы ваше представление рециркулятора прокручивалось только вертикально, вы должны переопределить onInterceptTouchEvent(ev: MotionEvent) в вашем ViewPager Класс и определить тип прокрутки.

Это будет выглядеть так:

class MyViewPager {
    override fun onInterceptTouchEvent(ev: MotionEvent): Boolean = 
       !isVerticalScroll()
}

Метод isVerticalScroll() должен быть создан вами и вернуть текущее направление прокрутки.

Итаккогда вы проведете пальцем по горизонтали, вы попадете к следующему фрагменту.В то же время ваш вид переработчика будет прокручиваться вертикально, и никаких конфликтов не возникнет.

...