我正在为安卓设计一个基本的数独游戏。我想要一个4x4的表格,其中所有的单元格都是正方形。
我尝试使用TableLayout
中的16个按钮来实现这一点。
我的实现看起来像这样:
但它们是矩形的形状 :(
我的XML代码:
<TableLayout
android:id="@+id/tl"
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:gravity="center" >
<TableRow
android:id="@+id/tableRow1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center" >
<Button
android:id="@+id/button1"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="1" />
<Button
android:id="@+id/button2"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="2" />
<Button
android:id="@+id/button3"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="3" />
<Button
android:id="@+id/button4"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="4" />
</TableRow>
<TableRow
android:id="@+id/tableRow2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center" >
<Button
android:id="@+id/button5"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="5" />
<Button
android:id="@+id/button6"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="6" />
<Button
android:id="@+id/button7"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="7" />
<Button
android:id="@+id/button8"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="8" />
</TableRow>
<TableRow
android:id="@+id/tableRow3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center" >
<Button
android:id="@+id/button9"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="9" />
<Button
android:id="@+id/button10"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="7" />
<Button
android:id="@+id/button11"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="8" />
<Button
android:id="@+id/button12"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="7" />
</TableRow>
<TableRow
android:id="@+id/tableRow3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center" >
<Button
android:id="@+id/button13"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="9" />
<Button
android:id="@+id/button14"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="7" />
<Button
android:id="@+id/button15"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="8" />
<Button
android:id="@+id/button16"
style="@style/box_sky_blue"
android:layout_weight="1"
android:text="7" />
</TableRow>
</TableLayout>
这里有一个天蓝色的盒子
<style name="box_sky_blue">
<item name="android:layout_width">wrap_content</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:background">@color/box_color_sky_blue</item>
<item name="android:layout_margin">5dp</item>
<item name="android:padding">5dp</item>
<item name="android:textSize">20sp</item>
<item name="android:gravity">center</item>
<item name="android:textColor">#ffffff</item>
</style>
我有4x4、5x5和6x6的正方形,如何使它们变得相同?