2016-02-15 7 views
2

A ListView В моей деятельности нет прокрутки - как только я положил палец вверх, прокрутка останавливается. У меня есть еще один ScrollView в иерархии, но его visibility установлен в gone.Android ListView прокручивает без импульса

<ListView 
        android:id="@+id/eventsListView" 
        android:layout_width="match_parent" 
        android:layout_height="match_parent" 
        android:layout_below="@+id/contentViewSearchBar" 
        android:divider="@android:color/transparent" 
        android:dividerHeight="10.0sp" 
        android:listSelector="@color/transparent" /> 

View hierarchy

Любые идеи?

+0

Не могли бы вы опубликовать eventsListViewRefresh код? –

+0

@MariusKaunietis Это поведение началось до того, как я добавил этот SwipeRefreshLayout, поэтому я не думаю, что это будет мешать. – Yaroslav

+0

просто дикая мысль, вы переопределили 'onTouchEvent()' в вашей 'Деятельности' и/или' Фрагмент'? –

ответ

2

вы переопределить onTouchEvent() в вашей деятельности и/или фрагмента? Если да, проверьте это условие case MotionEvent.ACTION_UP. Это, где обнаружен ваш «палец вверх».

0

Кажется, что ваши Scrollview грейферы сосредоточиться на себе, так ListView теряет импульс

+0

Это очень маловероятно, так как видимость ушла. –

0

overscroll код:

666      if (overScrollBy(0, deltaY, 0, mScrollY, 0, range, 0, mOverscrollDistance, true) 
667        && !hasNestedScrollingParent()) { 
668       // Break our velocity if we hit a scroll barrier. 
669       mVelocityTracker.clear(); 

Ваш родительский вид имеет возможность прокрутки. Это означает, что ребенок не прокручивает. Выбросьте ошибку, и вы увидите, что вы находитесь в коде startNestedScroll (int). Это не заботится о видимости, а только о существовании родителя.

Смежные вопросы