У меня странная проблема с запуском NestedScrollView на Nexus 5x (7.1.2) и Google Pixel (7.1.1). В других версиях ОС он работает нормально.
Флинковая анимация иногда останавливается сразу после поднятия пальца. Он держится, а следующие несколько выстрелов также могут остановиться. Чтобы воспроизвести его, вам нужно бросить несколько раз вверх и вниз.
В журналах эти выбросы выглядят почти одинаково с точки зрения скорости, направления и т.д., поэтому я не могу найти настоящую причину этой ошибки.
Также NestedScrollView
не обязательно должен находиться внутри CoordinatorLayout
, он также может иметь не NestedScrollingChild
вообще.
Например, эта ошибка воспроизводится с одним из следующих NestedScrollView
детей:
1) LinearLayout
, заполненном TextViews
2) WebView
3) LinearLayout
, заполненном RecyclerViews
.
Я знаю о возможных проблемах с RecyclerView
и Behaviors внутри CoordinatorLayout
, но это не связано.
Поэтому, пожалуйста, не упоминайте никаких
recyclerView.getLayoutManager().setAutoMeasureEnabled(true);
recyclerView.setNestedScrollingEnabled(false);
или что-то в этом роде.
Пример кода:
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="16dp"
android:text="Put a super long text here"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="16dp"
android:text="Put a super long text here"/>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>