【问题标题】:Hexagonal board for Android - how to do it?适用于 Android 的六角板 - 怎么做?
【发布时间】:2015-01-26 22:03:10
【问题描述】:

我又一次开始尝试 Android 的东西。我正在尝试创建一个使用六角板的小型简单游戏。我知道六边形计算背后的数学,但问题是如何在 Android 中实际实现这样的板?

起初我想使用网格视图,其中每隔一行移动半步,然后将这些方形网格用作我的板,并在方形框上绘制一个六边形。但是,常规的网格视图似乎不允许我这样做。

所以我想也许我需要创建一个带有六边形网格的自定义视图或一个带有方形位移网格的自定义视图。

我不熟悉 Android 自定义视图。我从Vogella's tutorials 阅读了有关自定义视图的教程,但我仍然不确定是否可以创建六边形网格作为自定义视图。

那么关于如何在 android 上创建和实现六边形游戏板有什么想法和帮助吗?

【问题讨论】:

  • This post 可能会给你一些想法。
  • 非常感谢!这看起来很有希望,也是我想做的事情。

标签: android android-custom-view android-gridlayout hexagonal-tiles


【解决方案1】:

我当然会为此使用自定义视图。当您绘制视图时,您可以使用一个循环将每个六边形图块绘制在整个视图中的正确位置。这将为您提供最大的灵活性。

我建议您首先编写一个方法,该方法针对整个视图中的任何给定点确定它所在的六边形图块。您将需要它来确定触摸了哪个图块,它还有助于绘图。

它的好处是,如果您跟踪每个图块的中心,那么对于任何给定点,最近的中心点会告诉您该点位于哪个图块中。

【讨论】:

  • 是的,我一直在考虑一个自定义视图,它有一种仅由六角形中心点组成的格子。然后我可能会在这些点上画出六角形。这里的问题是,就像我在问题中所说的那样,我真的不熟悉 android 自定义视图,目前不知道这是否可以做到,如果有可能,如何实现它。我想我需要从 Vogella 的页面上阅读更多这些教程。
  • @zaplec 哦,是的,这当然是可能的!如果你能画一个六边形,你可以画很多!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-29
  • 1970-01-01
相关资源
最近更新 更多