【问题标题】:How to adjust the height of each cell in the gridview?如何调整gridview中每个单元格的高度?
【发布时间】:2015-04-10 18:20:26
【问题描述】:

我有包含文本视图和图像视图的gridview。我试图调整布局的高度和布局内的内容,即textview 和imageview,但没有用。如何调整gridview 中单元格的高度。

<GridView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/gridviewevents"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal"
    android:columnWidth="40dp"
    android:listSelector="@android:color/transparent"
    android:numColumns="7"
     />

以下 xml 包含每个单元格内的元素。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/linlay"
android:layout_width="wrap_content"

android:layout_height="35dp"
android:background="@drawable/calendar_cell"
android:gravity="center"
android:orientation="vertical"
>

<TextView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/date"
    android:layout_width="wrap_content"
     android:layout_height="wrap_content"
    android:minHeight="20dp"
    android:textColor="#0000D7"
    android:textSize="10dip"
    android:textStyle="bold" >
</TextView>

<ImageView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/date_icon"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:minHeight="10dp"
    android:src="@drawable/event"
    android:visibility="gone" />

</LinearLayout>

【问题讨论】:

  • 1 您的 LinearLayout 处于打开状态。 2 您不需要它 - 只需使用 TextView 将图像包含为复合可绘制对象(已保存 1 个布局和 1 个视图)。供参考:developer.android.com/reference/android/widget/…
  • 您不能这样做,您必须在以下 xml 布局中为您的 TextView 和 ImageView 设置最小高度
  • @hema18 我更新了我的代码但没有用
  • 使 textview 和 imageview 的最小高度成为可能发生的最大值。您拥有的最高图像是 50 db,因此您必须将 imageView 的最小高度设置为 50 db,对于 textView 也是如此,可能发生的最大行数
  • @DerGolem 我无法摆脱那个图像视图......这很重要......

标签: android height cell android-gridview


【解决方案1】:
android:layout_height="wrap_content"

确保 ImageView 和 TextView 的高度不会大于或小于其内容的高度(因此视图上的文本或图像)。

还有

android:layout_height="fill_parent"
android:layout_height="match_parent"

FILL_PARENT(在 API 级别 8 及更高版本中重命名为 MATCH_PARENT),这意味着视图希望与其父级一样大(减去填充) WRAP_CONTENT,这意味着视图希望足够大以包含其内容(加上填充)。

如果您使用 FILL_PARENT,请确保您也使用

 android:layout_weight="1"

如果每个元素或单元格的权重为“1”,则所有元素的大小都相同。例如。如果 ImageView 的权重为“2”,TextView 为“1”,那么 ImageView 将是原来的两倍。

更多信息 the Android-site

【讨论】:

    猜你喜欢
    • 2018-09-04
    • 1970-01-01
    • 1970-01-01
    • 2019-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-09
    相关资源
    最近更新 更多