[英]How to fit views inside bounds of GridLayout?
我正在嘗試將4x6的按鈕網格放置在GridLayout內,但是有些按鈕被放置在布局范圍之外,並且不知道如何解決。 基本上,我希望所有按鈕視圖都縮小以適合網格布局。
<GridLayout
android:id="@+id/grid_buttons"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:columnCount="6"
android:rowCount="4">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_column="0"
android:layout_row="0"
android:text="@string/button_1"/>
<Button
android:layout_weight="1"
android:layout_column="1"
android:layout_row="0"
android:text="@string/button_2"/>
<Button
android:layout_weight="1"
android:layout_column="2"
android:layout_row="0"
android:text="@string/button_3"/>
<Button
android:layout_weight="1"
android:layout_column="0"
android:layout_row="1"
android:text="@string/button_4"/>
<Button
android:layout_weight="1"
android:layout_column="1"
android:layout_row="1"
android:text="@string/button_5"/>
<Button
android:layout_weight="1"
android:layout_column="2"
android:layout_row="1"
android:text="@string/button_6"/>
<Button
android:layout_weight="1"
android:layout_column="0"
android:layout_row="2"
android:text="@string/button_7"/>
<Button
android:layout_weight="1"
android:layout_column="1"
android:layout_row="2"
android:text="@string/button_8"/>
<Button
android:layout_weight="1"
android:layout_column="2"
android:layout_row="2"
android:text="@string/button_9"/>
<Button
android:layout_weight="1"
android:layout_column="1"
android:layout_row="3"
android:text="@string/button_0"/>
<Button
android:layout_weight="1"
android:layout_column="3"
android:layout_row="0"
android:text="@string/button_A"/>
<Button
android:layout_weight="1"
android:layout_column="4"
android:layout_row="0"
android:text="@string/button_B"/>
<Button
android:layout_weight="1"
android:layout_column="5"
android:layout_row="0"
android:text="@string/button_C"/>
<Button
android:layout_weight="1"
android:layout_column="3"
android:layout_row="1"
android:text="@string/button_D"/>
<Button
android:layout_weight="1"
android:layout_column="4"
android:layout_row="1"
android:text="@string/button_E"/>
<Button
android:layout_weight="1"
android:layout_column="5"
android:layout_row="1"
android:text="@string/button_F"/>
</GridLayout>
代替GridLayout
,您可以通過使用具有XML屬性android:layout_weight
和android:weightSum
多個LinearLayout
輕松實現所需的結果。
這是您的4*6
網格。 只需根據需要更改按鈕文本。
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="4">
<!-- First Row -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="1"
android:weightSum="6">
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="1"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="2"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="3"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="4"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="5"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="6"/>
</LinearLayout>
<!-- Second Row -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="1"
android:weightSum="6">
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="7"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="8"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="9"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="10"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="11"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="12"/>
</LinearLayout>
<!-- Third Row -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="1"
android:weightSum="6">
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="13"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="14"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="15"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="16"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="17"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="18"/>
</LinearLayout>
<!-- Fourth Row -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:orientation="horizontal"
android:layout_weight="1"
android:weightSum="6">
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="19"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="20"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="21"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="22"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="23"/>
<Button
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="24"/>
</LinearLayout>
希望對您有幫助〜
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.