android - 使用 View 对象制作简单的 Android 游戏

标签 android android-animation android-view

我正在为 Android 制作一 block 板。我使用 .png 图像作为棋盘(背景)和棋子。基本上,这是一款图形根据触摸事件更新的游戏。这是一项学校作业,所以我必须使用 View 实现。对于图形,我考虑了两种选择:

  1. 创建一个完整的“BoardView”类(扩展View)并使用onDraw(canvas)直接在 Canvas 上绘制所有图形组件。

  2. 使用 ImageView 对象来表示每个棋子和棋盘,并将它们放在 Layout 上。

我的直觉告诉我使用第一个方法。但我的想法是我想使用预先实现的 TranslateAnimation当棋子移动时。以我的理解;这迫使我使用第二方法,因为我无法为Drawable设置动画。

现在,问题是:哪种方法最适合我?如果第二;首选使用哪种布局?我希望能够将棋盘重叠在棋盘图像上,并将 ImageView 对象的位置相互比较,以确定棋盘上棋盘的放置位置。

最佳答案

对于你的简单需求,我认为你可以采用方法2。

相信我,我几年前就在旧版 Linux 平台上做过类似的事情。对于这些简单的游戏应用程序,您真的不需要费心所有框架绘制的东西。只需坚持使用现有的 UI 小部件即可。

这是因为可见元素都非常简单,例如卡片、静态图像、 block 等。您不需要执行像素绘制。我尝试过制作俄罗斯方 block 、扫雷和纸牌比赛游戏。我什至使用现有的动画设施为其创建简单的视觉效果。这很容易做到。

而且,当然,作为软件程序员,使用典型的逐帧方法编写游戏要专业得多。但这取决于要求。为什么不使用更少的代码来创造更多的值(value)?

关于android - 使用 View 对象制作简单的 Android 游戏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20273941/

相关文章:

Android 应用程序无法在 1.5 固件上运行?

android - 对长按执行涟漪效应

android - 动画添加到 Nexus4 与其他设备上的 Activity 的新 TextView 的问题

java - 检索 FAB 的 X 和 Y

android - 识别使用缺少 AttributeSet 的 View 构造函数时的错误

android - 在方向更改时将 WebView 位置恢复到相同的内容 (Android)

android - 如何找出ROM提供商是谁?

javascript - 在 Xamarin 中从 C# 对象调用 JavaScript

android - 我可以更改 Android Layout Transition 的行为以消除淡入淡出但保持高度动画吗?

android - Android中如何删除View?