【发布时间】:2013-11-10 21:40:28
【问题描述】:
我正在为 android 设计一个基本的井字游戏,作为我的“Hello World”项目。 我想要一个 3x3 表格,其中所有单元格都是正方形。
如果其中的任何单元格中没有任何内容,我所做的方式会使列缩小。 我正在尝试使用 GridLayout 中的 9 个 TextView。
我欢迎所有这样做的建议。
我的方式是这样的——
<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>
【问题讨论】:
-
我建议您改用
LinearLayout。发布您的 XML! -
我认为你应该有
" "(space) 而不是""(empty string) 并且一切都应该没问题.. -
这没有帮助,当我将所有“”替换为“”时,它仍然会缩小前 2 列(可能是为了换行),保持最后一列相当宽
标签: android textview android-ui android-tablelayout android-gridlayout