操纵gridlayout coulmnCount

时间:2019-05-13 08:50:18

标签: android cardview

我知道GridLayout已弃用,不再受支持,但我必须实现拖放的Cardview布局,并使用gridlayout做到了(我没有选择)

我的GridLayout填充了LayoutInflater,深度为 GridLayout--CardView(childview)-TextView(cardview内部)

我的columnCount是4。问题是因为网格布局宽度不足以查看所有四个项目,所以我的第四个项目被覆盖了。

是否可以仅将4个项目粘贴到具有静态宽度和高度的GridLayout中?

(我知道GridLayout不支持权重属性)

  1. 将layout_gravity赋予子视图。
  2. 重视儿童视力。
  3. 将重力赋予parentview(GridLayout)

GridLayout xml:

<ScrollView
    android:id="@+id/scroll_view_menu"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center_vertical">


    <GridLayout
        android:orientation="horizontal"
        android:id="@+id/grid_layout_menu"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:columnCount="3"></GridLayout>
</ScrollView>

ChildView xml:

<android.support.v7.widget.CardView 
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="122dp"
android:layout_height="64dp"
android:layout_margin="8.3dp"
android:clickable="true"
android:foreground="?attr/selectableItemBackground"
app:cardCornerRadius="6dp">


<TextView
    android:id="@+id/text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:gravity="center_horizontal"
    android:lineSpacingExtra="5.4sp"
    android:text="asd"
    android:textColor="#000000"
    android:textSize="16sp" />

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

0 个答案:

没有答案