我有一个gridview,我需要同一行的单元格具有相同的高度(Android本身的宽度保持不变,但高度不同),它们看起来如下图所示
好的,每个单元格都有一个按钮和一个textview,textview文本可以很小或很大,最终会使每个单元格的高度不同。有没有办法让同一条线的所有单元格与最大单元格的高度相同?每个细胞都有不同的高度,这很奇怪。
gridview
<GridView
android:id="@+id/grid_sons"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:horizontalSpacing="3dp"
android:numColumns="2"
android:verticalSpacing="3dp" />
单元格布局
<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="match_parent"
android:orientation="vertical"
tools:ignore="ContentDescription">
<ImageButton
android:id="@+id/btn"
android:layout_width="75dp"
android:layout_height="75dp"
android:layout_gravity="center_horizontal"
android:layout_margin="20dp"
android:background="@color/transparente"
android:src="@drawable/ic" />
<TextView
android:id="@+id/txt_label_cell"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginBottom="10dp"
android:layout_marginEnd="5dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_marginStart="5dp"
android:layout_weight="1"
android:gravity="center"
android:text="@string/test"
android:textAppearance="?android:attr/textAppearanceSmall"
android:textColor="@color/labelColor" />
<View
android:layout_width="match_parent"
android:layout_height="1dp"
android:layout_marginEnd="10dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginStart="10dp"
android:background="#60ffffff" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<ImageButton
android:id="@+id/btn_what"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_weight="1"
android:background="@color/transparente"
android:src="@drawable/ic_what" />
<ImageButton
android:id="@+id/btn_config"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:layout_weight="1"
android:background="@color/transparente"
android:src="@drawable/ic_config" />
</LinearLayout>
</LinearLayout>
THX
答案 0 :(得分:1)
在每个textview中添加任何一个属性
android:singleLine="true"
android:maxLines="1"
答案 1 :(得分:1)
答案已经给出......
看一下这篇文章......
GridView rows overlapping: how to make row height fit the tallest item?
我希望这会对你有帮助......