在Android布局上显示“帮助”叠加层

时间:2012-05-25 15:21:37

标签: android overlay

我正在开发Android游戏(Sky Hiking - Google PlayGithub)。我想为游戏添加一个“帮助”选项,它将逐个浏览游戏组件,用箭头指向它们并有一个文本框说明它们的用途。我正在寻找有关实现这一目标的最佳方法的建议。我应该在包含箭头的游戏活动上显示一个巨大的(部分透明的)图像(我需要为游戏的每个组成部分生成每个箭头的图像)。

修改:对于不同的屏幕尺寸,还有一个问题。

这个最佳做法是什么?

2 个答案:

答案 0 :(得分:6)

这是我在这种情况下会做的事情。它可能不是最好的解决方案,但无论屏幕大小如何,它都应该有效:

在循环中执行以下操作,每个元素执行一次:

  1. 在屏幕上获取元素的当前位置。
  2. 将箭头绘制在元素旁边的位置。您可以通过获取元素的X和Y坐标以及添加一定量的空间来获得此位置。例如,如果元素位于10,10,则在25,25处绘制箭头。您可以在决定绘制箭头的位置时考虑元素的宽度。您还应检查左侧或右侧是否有更多可用空间,并在该侧绘制。此外,如果元素靠近中间,您可以在一侧绘制箭头,在另一侧绘制文本。
  3. 在绘制箭头后,您可以在屏幕的另一部分显示包含帮助内容的文本框。您可以将帮助内容存储在XML中,并显示该元素的相应字符串。
  4. 删除箭头和文本框以准备下一个元素。

答案 1 :(得分:0)

我建议你看看PopupWindow。它可以显示任意视图(您的指针和文本框),它可以锚定到您选择的视图(您正在解释的视图)。