在gridLayout中设置最大列高以避免重叠

时间:2016-07-07 16:11:30

标签: android android-gridlayout

在我的应用中,我遇到了这个问题: enter image description here

如您所见,我添加了一个选项,让使用通过alertDialog中的编辑文本指定名称。用户可以输入一个非常长的名称,破坏整个布局,因为以下行会重叠。 如何为每行输入指定的高度和宽度?

activity_main.xml中

<?xml version="1.0" encoding="utf-8"?>

<GridView xmlns:android="http://schemas.android.com/apk/res/android"
          android:id="@+id/gridview"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:columnWidth="90dp"
          android:numColumns="auto_fit"
          android:verticalSpacing="10dp"
          android:horizontalSpacing="10dp"
          android:stretchMode="columnWidth"
          android:gravity="center"
          android:longClickable="true"
    />

grid_item.xml

<?xml version="1.0" encoding="utf-8"?>
<!-- Layout for a single list item -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              xmlns:tools="http://schemas.android.com/tools"
              android:layout_width="match_parent"
              android:layout_height="wrap_content"
              android:gravity="center_vertical"
              android:orientation="horizontal"
              android:minHeight="?android:attr/listPreferredItemHeight"
              android:padding="16dp">



        <TextView
            android:id="@+id/text_1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            tools:text="test text"
            />


</LinearLayout>

1 个答案:

答案 0 :(得分:0)

为行项目parent或textview指定一些高度,如下所示:

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools"
          android:layout_width="match_parent"
          android:layout_height="100dp"
          android:gravity="center_vertical"
          android:orientation="horizontal"
          android:minHeight="?android:attr/listPreferredItemHeight"
          android:padding="16dp">



    <TextView
        android:id="@+id/text_1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        tools:text="test text"
        />


 </LinearLayout>

或者你的textview的setheight或给它maxlines

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          xmlns:tools="http://schemas.android.com/tools"
          android:layout_width="match_parent"
          android:layout_height="wrap_content"
          android:gravity="center_vertical"
          android:orientation="horizontal"
          android:minHeight="?android:attr/listPreferredItemHeight"
          android:padding="16dp">



    <TextView
        android:id="@+id/text_1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:maxLines="6"
        android:minLines="6"
        tools:text="test text"
        />


  </LinearLayout>
相关问题