【问题标题】:How to fill the blank space at the bottom of grid view in android?如何在android中填充网格视图底部的空白区域?
【发布时间】:2017-06-28 10:07:23
【问题描述】:

我的项目有具有主要相对布局的片段。相对布局具有布局宽度和高度 match_parent。它在顶部包含网格布局。网格布局后添加线性布局以分隔屏幕的其余部分。 添加了线性布局网格视图的下方。问题来了。 我的网格视图包含九个元素。在小型设备上它会填满整个屏幕,但是当设备屏幕足够大时,最后会添加空白空间。我想在每个设备上用 9 个元素填充整个屏幕,可能设备尺寸小或大。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
tools:context="yieldcurve.jamakharch.SavingsFragment">

<GridLayout
    android:id="@+id/gl_savings_header"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_weight="1"
    android:columnCount="3"
    android:padding="2dp"
    android:rowCount="2">

    <yieldcurve.jamakharch.util.JTextViewRegular
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="0"
        android:layout_columnWeight="9"
        android:layout_gravity="center_horizontal"
        android:layout_marginTop="6dp"
        android:layout_row="0"
        android:text="@string/total_savings"
        android:textColor="@color/colorBlue"
        android:textSize="13sp" />

    <View
        android:layout_width="1dp"
        android:layout_height="75dp"
        android:layout_column="1"
        android:layout_columnWeight="0.1"
        android:layout_marginBottom="3dp"
        android:layout_marginTop="3dp"
        android:layout_row="0"
        android:layout_rowSpan="2"
        android:background="@color/colorLine" />

    <ImageView
        android:id="@+id/iv_savings_refresh"
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_column="2"
        android:layout_columnWeight="22"
        android:layout_gravity="center_horizontal"
        android:layout_marginTop="4dp"
        android:layout_row="0"
        android:src="@mipmap/ic_reset" />

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_column="0"
        android:layout_columnWeight="200"
        android:layout_gravity="center_horizontal"
        android:layout_marginBottom="3dp"
        android:layout_marginTop="2dp"
        android:layout_row="1"
        android:background="@color/colorGrey">

        <ImageView
            android:id="@+id/iv_savings_minus"
            android:layout_width="20dp"
            android:layout_height="20dp"
            android:layout_gravity="center"
            android:layout_marginBottom="3dp"
            android:layout_marginLeft="4dp"
            android:layout_marginTop="3dp"
            android:src="@mipmap/ic_minus" />

        <LinearLayout
            android:layout_width="1dp"
            android:layout_height="25dp"
            android:layout_marginBottom="5dp"
            android:layout_marginLeft="4dp"
            android:layout_marginTop="5dp"
            android:background="@color/colorLine" />

        <yieldcurve.jamakharch.util.JCustomBoldTextView
            android:id="@+id/tv_total_savings_value"
            android:layout_width="40dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="2dp"
            android:gravity="center"
            android:text="200."
            android:textColor="@color/colorTracklabels"
            android:textSize="20sp" />

        <yieldcurve.jamakharch.util.JCustomBoldTextView
            android:id="@+id/tv_saving_unit"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:text="L"
            android:textColor="@color/colorTracklabels"
            android:textSize="20sp" />

        <LinearLayout
            android:layout_width="1dp"
            android:layout_height="25dp"
            android:layout_marginBottom="5dp"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="5dp"
            android:background="@color/colorLine" />

        <ImageView
            android:id="@+id/iv_savings_plus"
            android:layout_width="20dp"
            android:layout_height="20dp"
            android:layout_gravity="center"
            android:layout_marginLeft="4dp"
            android:layout_marginRight="4dp"
            android:src="@mipmap/ic_plus" />
    </LinearLayout>

    <ImageView
        android:id="@+id/iv_show_saving_chart"
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_column="2"
        android:layout_columnWeight="2"
        android:layout_gravity="center"
        android:layout_marginTop="2dp"
        android:layout_row="1"
        android:src="@mipmap/ic_show_map" />
</GridLayout>

<LinearLayout
    android:id="@+id/savings_seperator"
    android:layout_width="match_parent"
    android:layout_height="1dp"
    android:layout_below="@+id/gl_savings_header"
    android:layout_marginLeft="3dp"
    android:layout_marginRight="3dp"
    android:layout_marginTop="3dp"
    android:background="@color/colorLine"
    android:orientation="horizontal" />

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="fill_parent"
    android:layout_below="@+id/savings_seperator">

    <GridView
        android:id="@+id/gv_track_savings"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:layout_marginTop="4dp"
        android:layout_weight="1"
        android:gravity="center"
        android:numColumns="3"
        android:paddingLeft="4dp"></GridView>
</LinearLayout>

【问题讨论】:

  • android:layout_height="wrap_content" 更改为android:layout_height="match_parent" of GridLayout

标签: android android-layout gridview android-relativelayout


【解决方案1】:

将 android:layout_height="wrap_content" 更改为 android:layout_height="match_parent" 并且您的父视图组是相对布局,因此 android:layout_weight="1" 不起作用。

android:layout_weight 仅用于线性布局。

【讨论】:

    猜你喜欢
    • 2012-08-25
    • 1970-01-01
    • 2022-01-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多