如何在布局的新行中添加项目?

时间:2019-01-05 23:24:37

标签: android android-linearlayout

我是Android Studio开发的新手。如果第一行已满,我想在下面的行中添加新框。在下图中,项目#1,#2,#3,#4占据了整个宽度,因此,当我添加新项目(第5盒)时,它紧挨着第4盒。如何将其自动添加到第二行?

enter image description here

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="wrap_content"
        android:layout_height="30dp"
        android:orientation="vertical"
        android:layout_margin="2dp"
        android:padding="1dp">

    <TextView
            android:id="@+id/text1"
            android:layout_width="wrap_content"
            android:layout_height="15dp"
            android:text="#test_hashtag"
            android:padding="5dp"
            android:gravity="center"
            android:background="@drawable/circle_text_bg"
            android:textColor="@android:color/black"
            android:textSize="13dp"/>

</LinearLayout>

circle_text_bg在盒子上画了一条边界线。

我所做的尝试: 我尝试使用RecyclerView和ListView代替TextView。但它们都只能水平垂直移动。

Edit1:这些项目是动态的。它们是一些标签(意味着第一行可能包含3个项目,第二行可能包含4个项目……等等)

1 个答案:

答案 0 :(得分:1)

考虑将RecyclerView与GridLayoutManager一起使用。

如果要四列,可以执行以下操作:

gd

或者,以XML:

shortDataFrame = longDataFrame.sample(100)

({GridLayoutManager glm = new GridLayoutManager(context, 4); recyclerView.setLayoutManager(glm); ,如果您使用的是AndroidX)