Android java горизонтальный просмотрщик в вертикальной форме match_parent не работает - PullRequest
0 голосов
/ 14 ноября 2018

Я следовал следующему уроку: Здесь .

, который позволяет создать такую ​​вещь:

Я изменилнемного макетазаймет все пространство, которое должно занять, его размер равен размеру содержимого внутреннего рециркулятора, и горизонтальный.

Здесь:

Iне знаю, если проблема связана с этим:

MainActivity.java

RecyclerView my_recycler_view = (RecyclerView) findViewById(R.id.my_recycler_view);
my_recycler_view.setHasFixedSize(true);
RecyclerViewDataAdapter adapter = new RecyclerViewDataAdapter(this, allSampleData);
my_recycler_view.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false));
my_recycler_view.setAdapter(adapter);

или

RecyclerViewDataAdapter.java

SectionListDataAdapter itemListDataAdapter = new SectionListDataAdapter(mContext, singleSectionItems);
itemRowHolder.recycler_view_list.setHasFixedSize(true);
itemRowHolder.recycler_view_list.setLayoutManager(new LinearLayoutManager(mContext, LinearLayoutManager.HORIZONTAL, false));
itemRowHolder.recycler_view_list.setAdapter(itemListDataAdapter);

Ответы [ 2 ]

0 голосов
/ 15 ноября 2018

Измените свой файл list_item.xml на это:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="#831067d2">

    <LinearLayout
        android:id="@+id/horizontalBarLayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:background="#384148"
        android:orientation="horizontal"
        android:paddingLeft="10dp"
        android:paddingTop="10dp"
        android:paddingBottom="10dp"
        android:weightSum="10">

        <TextView
            android:id="@+id/titleApp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_marginLeft="5dp"
            android:text="Sample title"
            android:textColor="@android:color/white"
            android:layout_weight="9"/>

        <ImageView
            android:id="@+id/iconApp"
            android:layout_width="30dp"
            android:layout_height="30dp"
            android:layout_weight="1"/>

    </LinearLayout>

    <android.support.v7.widget.RecyclerView
        android:id="@+id/recycler_view_list"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="center_vertical"
        android:orientation="horizontal"
        android:layout_below="@+id/horizontalBarLayout"/>

</RelativeLayout>
0 голосов
/ 15 ноября 2018

Вы пытались удалить второй линейный (в list_item.xml) paddingLeft = "10dp" и paddingTop = "10dp" второго линейного макета, а затем изменили layout_height = "wrap_content" на layout_height = "match_parent" для первого и второголинейное расположение и убедитесь, что #fillViewPort включен для них обоих

...