gpt4 book ai didi

Android:创建方形单元格表

转载 作者:太空宇宙 更新时间:2023-11-03 10:47:45 25 4
gpt4 key购买 nike

我正在为 Android 设计一个基本的井字游戏作为我的“Hello World”项目。我想要一个 3x3 的表格,其中的所有单元格都是正方形。

如果其中的任何单元格中没有任何内容,我所做的方法会使该列缩小。我正在尝试使用 GridLayout 中的 9 个 TextView。

我欢迎为此提出的所有建议。

我的方式是这样的—— enter image description here

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
style="@style/LayoutStyle"
tools:context=".GameBoard">


<GridLayout
style="@style/GameBoardGrid"
android:id="@+id/gridTitle">

<TextView
android:id="@+id/tile00"
style="@style/GameTile"
android:layout_column="0"
android:layout_row="0"
android:text=""/>

<TextView
android:id="@+id/tile01"
style="@style/GameTile"
android:layout_column="1"
android:layout_row="0"
android:text="X"/>

<TextView
android:id="@+id/tile02"
style="@style/GameTile"
android:layout_column="2"
android:layout_row="0"
android:text="O"/>

<TextView
android:id="@+id/tile10"
style="@style/GameTile"
android:layout_column="0"
android:layout_row="1"
android:text=""/>

<TextView
android:id="@+id/tile11"
style="@style/GameTile"
android:layout_column="1"
android:layout_row="1"
android:text="O"/>

<TextView
android:id="@+id/tile12"
style="@style/GameTile"
android:layout_column="2"
android:layout_row="1"
android:text="X"/>

<TextView
android:id="@+id/tile20"
style="@style/GameTile"
android:layout_column="0"
android:layout_row="2"
android:text=""/>

<TextView
android:id="@+id/tile21"
style="@style/GameTile"
android:layout_column="1"
android:layout_row="2"
android:text="X"/>

<TextView
android:id="@+id/tile22"
style="@style/GameTile"
android:layout_column="2"
android:layout_row="2"
android:text="O"/>

</GridLayout>

</RelativeLayout>

其中,GameTile 的样式是 -

<style name="GameTile">
<item name="android:textSize">60sp</item>
<item name="android:layout_gravity">fill</item>
<item name="android:gravity">center</item>
<item name="android:paddingLeft">@dimen/padding_grid_text</item>
<item name="android:paddingRight">@dimen/padding_grid_text</item>
<item name="android:fontFamily">Roboto-Thin</item>
<item name="android:background">@color/gray</item>
<item name="android:layout_margin">@dimen/margin_grid_cell</item>
<item name="android:layout_weight">1</item>
</style>

最佳答案

GridLayout 更改为 LinearLayout,如下所示:

    <TextView
android:id="@+id/tile00"
style="@style/GameTile"
android:text=" "/>

<TextView
android:id="@+id/tile01"
style="@style/GameTile"
android:text="X"/>

<TextView
android:id="@+id/tile02"
style="@style/GameTile"
android:text="O"/>

</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/gridTitle">

<TextView
android:id="@+id/tile10"
style="@style/GameTile"
android:text=""/>

<TextView
android:id="@+id/tile11"
style="@style/GameTile"
android:text="O"/>

<TextView
android:id="@+id/tile12"
style="@style/GameTile"
android:text="X"/>

</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/gridTitle">

<TextView
android:id="@+id/tile20"
style="@style/GameTile"
android:text=""/>

<TextView
android:id="@+id/tile21"
style="@style/GameTile"
android:text="X"/>

<TextView
android:id="@+id/tile22"
style="@style/GameTile"
android:text="O"/>

</LinearLayout>

你的风格是:

<style name="GameTile">
<item name="android:textSize">60sp</item>
<item name="android:layout_gravity">fill</item>
<item name="android:gravity">center</item>
<item name="android:paddingLeft">@dimen/padding_grid_text</item>
<item name="android:paddingRight">@dimen/padding_grid_text</item>
<item name="android:fontFamily">Roboto-Thin</item>
<item name="android:background">@color/gray</item>
<item name="android:layout_margin">@dimen/margin_grid_cell</item>
<item name="android:layout_weight">1</item>
<item name="android:layout_width">0dp</item>
<item name="android:layout_height">wrap_content</item>
</style>

关于Android:创建方形单元格表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19697102/

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