Android 数独布局

Android sudokod layout

我想开发一个简单的数独应用程序。对于布局,我需要有一个 9x9 table/grid 的面板,下面有 12 个按钮,所有这些都必须放在一个屏幕上,我有几个想法,但每个想法都有问题

  1. 使用GridView并将二维数组传递给适配器,但是,网格是可滚动的,玩家必须看到整个棋盘。

  2. 使用TableView,但它不像网格那样可以点击。

  3. 在 xml 中或以编程方式为板创建 81 按钮,我认为这会很复杂。

有没有其他更简单或者更高效的思路!如果不是,以上哪一个更好。

有一个选项可以使用加权宽度和高度来完成此操作。据我所知,此功能仅在 LinearLayout 秒后可用。

我刚刚在 this answer 中解释的主要思想。

请先阅读我链接到的答案,然后您可以使用以下方法来布置按钮。

  1. 声明一个主垂直 LinearLayout 并将其宽度和高度设置为 match_parent

  2. 添加 9 个水平 LinearLayout,宽度设置为 match_parent,高度设置为 0dplayout_weigth 等于 1.

  3. 向每个 LinearLayout 添加 9 个按钮(即您的单元格),同时将它们的宽度设置为 0dp,将 layout_weight 设置为 1 并且他们的高度设置为 match_parent.