相邻显示项目

时间:2019-01-27 08:12:48

标签: android android-layout kotlin

我正在尝试使用JSON和RecyclerView在测试项目中显示项目。代码工作正常,但是我代码中的问题是我看到的是一行一行的图像,而不是彼此相邻。我也尝试过表格布局和卡片布局,但是对我来说不起作用。高度赞赏任何输入。

当前显示

Image1
Image2
Image3
Image4
Image5

预期产量

Image1 Image2 Image3
Image4 Image5

完整代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:weightSum="3">
        <ImageView
        android:id="@+id/PersonImage"
        android:layout_width="113dp"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_marginTop="8dp"
        android:layout_marginBottom="8dp"
        android:contentDescription="@string/app_name"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.328"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent"
        app:srcCompat="@mipmap/ic_launcher" />
        <TextView
        android:id="@+id/PersonName"
        android:layout_width="71dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="80dp"
        android:layout_marginEnd="8dp"
        android:text="Name"
        android:textStyle="bold|italic"
        android:visibility="invisible"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/PersonImage"
        app:layout_constraintTop_toTopOf="parent" />
</LinearLayout>

1 个答案:

答案 0 :(得分:0)

将线性根layout_width更改为wrap_content。然后,在设置回收站时,将layoutmanager更改为GridLayoutManager,例如:

int columnSize = 3;
mLayoutManager = new GridLayoutManager(this, columnSize);
mRecyclerView.setLayoutManager(mLayoutManager);

Doc link