gpt4 book ai didi

android - GridLayout 没有填满屏幕

转载 作者:行者123 更新时间:2023-11-29 21:00:22 26 4
gpt4 key购买 nike

我正在尝试使用网格布局。我想让我的网格按钮填满屏幕,但我在这样做时遇到了问题。我注意到布局本身填满了屏幕,但他的 child 没有填满布局。这是输出: http://i.imgur.com/TWNuTaj.png

我在互联网上搜索了很多,但大多数答案都提供将 GridLayout 替换为 LinearLayout 或 RelativeLayout 但我必须留在 GridLayout 中。此外,我不想给按钮指定特定大小,而是保留链接图片中的结构。

这是我的代码:

    <GridLayout 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:layout_margin="0.5dp"
android:columnCount="4"
android:orientation="horizontal"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:rowCount="5"
tools:context=".Level1" >

<Button
android:layout_width="0dp"
android:layout_column="0"
android:layout_row="0"
android:text="0" />

<Button
android:id="@+id/b_1"
android:layout_column="1"
android:layout_gravity="fill_horizontal"
android:layout_row="0"
android:text="1" />

<Button
android:id="@+id/b_2"
android:layout_column="2"
android:layout_gravity="fill"
android:layout_row="0"
android:layout_rowSpan="3"
android:text="2" />

<Button
android:id="@+id/b_3"
android:layout_column="3"
android:layout_row="0"
android:text="3" />

<Button
android:layout_width="0dp"
android:layout_column="0"
android:layout_row="1"
android:text="0" />

<Button
android:id="@+id/b_4"
android:layout_column="1"
android:layout_gravity="fill_vertical"
android:layout_row="1"
android:layout_rowSpan="3"
android:text="4" />

<Button
android:id="@+id/b_6"
android:layout_column="3"
android:layout_gravity="fill_vertical"
android:layout_row="1"
android:layout_rowSpan="3"
android:text="6" />

<Button
android:layout_width="0dp"
android:layout_column="0"
android:layout_row="2"
android:text="0" />

<Button
android:id="@+id/b_5"
android:layout_column="2"
android:layout_row="3"
android:text="5" />

<Button
android:layout_width="0dp"
android:layout_column="0"
android:layout_row="3"
android:text="0" />

<Button
android:layout_height="0dp"
android:layout_column="0"
android:layout_columnSpan="4"
android:layout_row="4"
android:text="0" />

</GridLayout>

最佳答案

尝试这种方式,希望这能帮助您解决问题。

GridLayout :“GridLayout 不提供对重量原则的支持,如重量中定义的那样。一般来说,因此不可能配置 GridLayout 以在多行或多列之间以非平凡的比例分配多余空间......为了完全控制在行或列中分配过多的空间;使用 LinearLayout subview 将组件保存在相关的单元格组中。”

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="vertical">
<Button
android:layout_width="match_parent"
android:layout_weight="0.20"
android:layout_height="0dp"
android:text="1" />

<Button
android:layout_width="match_parent"
android:layout_weight="0.80"
android:layout_height="0dp"
android:text="4" />

</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="vertical">
<Button
android:layout_width="match_parent"
android:layout_weight="0.80"
android:layout_height="0dp"
android:text="2" />

<Button
android:layout_width="match_parent"
android:layout_weight="0.20"
android:layout_height="0dp"
android:text="5" />

</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:orientation="vertical">
<Button
android:layout_width="match_parent"
android:layout_weight="0.20"
android:layout_height="0dp"
android:text="3" />

<Button
android:layout_width="match_parent"
android:layout_weight="0.80"
android:layout_height="0dp"
android:text="6" />
</LinearLayout>
</LinearLayout>

关于android - GridLayout 没有填满屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26312723/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com