Подтвердить что ты не робот

RecyclerView элементы с большим пустым пространством после 23.2.0

После обновления до v23.2.0 в моем RecyclerView у меня есть элементы с огромным пустым вертикальным пространством между элементами.

Мой макет элемента очень прост:

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
       android:layout_width="match_parent"
       android:layout_height="match_parent"                                    
       android:orientation="vertical" >
4b9b3361

Ответ 1

В соответствии с doc

С выпуском 23.2.0 появилась новая функция API LayoutManager: автоматическое измерение!
Это позволяет RecyclerView самому размеру основываться на размере его содержимого. Это означает, что ранее недоступные сценарии, такие как использование WRAP_CONTENT для измерения RecyclerView, теперь возможны.
Вы найдете, что все встроенные LayoutManager теперь поддерживают автоматическое измерение.

Из-за этого изменения убедитесь, что вы дважды проверяете параметры макета своих позиций: ранее проигнорированные параметры макета (например, MATCH_PARENT в направлении прокрутки) будет теперь полностью соблюден.

В макете вашего элемента вы должны изменить:

android:layout_height="match_parent"

с

android:layout_height="wrap_content" 

Ответ 2

Вы должны сделать Recyclerview и высоту размещения верстки элементов.

Ответ 3

В моем случае я сделал новые изменения wrap_content, но все еще существовал пробел, который проявлялся во время onMove или onSwipe. Я решил, что добавив этот код:

mRecyclerView.getLayoutManager().setMeasurementCacheEnabled(false);

Ответ 4

Это работа для меня.

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto">

<android.support.v7.widget.CardView
    android:layout_width="fill_parent"
    android:layout_height="100dp"
    android:elevation="7dp"
    app:cardCornerRadius="7dp"
    app:cardMaxElevation="7dp"
    app:contentPadding="7dp"
    android:layout_margin="5dp"
    >

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">
    <TextView
        android:id="@+id/tv_allfeedbacks_title"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:layout_marginLeft="5dp"
        android:textSize="14dp"
        android:textStyle="bold"
        />
    <TextView
        android:id="@+id/tv_allfeedback_date"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_marginRight="5dp"
        android:layout_marginTop="5dp"
        />
    <TextView
        android:id="@+id/tv_allfeedbacks_comment"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/tv_allfeedbacks_title"
        android:layout_marginTop="5dp"
        android:layout_marginLeft="5dp"
        />
        <TextView
            android:id="@+id/tv_allfeedbacks_username"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_margin="5dp"
            />
        <RatingBar
            android:id="@+id/ratingbar_allfeedbacks"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentRight="true"
            android:numStars="5"
            android:layout_margin="5dp"
            style="?attr/ratingBarStyleSmall"
            />
        </RelativeLayout>

</android.support.v7.widget.CardView>

Ответ 5

Я пытаюсь посмотреть как показано ниже: - Текстовое представление - Повторное представление в этом текстовом представлении (ограничение для текстового представления). В результате я не могу отобразить текст полностью, когда я прокручиваю текст вниз. Это то же самое, что потерять некоторую строку текста в соответствии с высотой этого текстового представления. Кто-нибудь дать мне несколько решений? Большое спасибо!