Как переопределить Scroll? - PullRequest
0 голосов
/ 30 мая 2018

У меня следующая раскладка:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.NestedScrollView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/left_col"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <android.support.v7.widget.RecyclerView
            android:id="@+id/recyclerView"
            android:layout_width="match_parent"
            android:layout_height="500dp"/>

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

    </LinearLayout>

</android.support.v4.widget.NestedScrollView>

Высота recyclerView предопределена кодом и равна высоте экрана устройства.Идея состоит в том, что пользователь не чувствует 2 вертикальных прокрутки на экране (то есть, чтобы он выглядел как 1 прокрутка).Как сделать так, чтобы когда textView1 плавно прокручивал содержимое до начала recyclerView, останавливался и затем прокручивался передаваемый внутрь recyclerView?

1 Ответ

0 голосов
/ 30 мая 2018

Если я правильно понимаю, у вас есть несколько вариантов:

  1. Если вы не хотите выполнять прокрутку за пределами RecyclerView, измените NestedScrollView на другой тип ViewGroup, например LinearLayout.
  2. Если вы хотите иметь непрерывную вертикальную прокрутку, вы можете отключить программно, используя recyclerView.setNestedScrollingEnabled(false);

Кроме того, у вашего recyclerView не будет динамического размера экрана, потому что вы 'повторное использование статической высоты android:layout_height="500dp"

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...