【发布时间】:2013-10-06 14:32:20
【问题描述】:
我最近完成了simple drag and drop shapes game。它让用户将一个形状 (ImageView) 拖到另一个“空占位符”ImageView。
我现在想让这个更高级一点,而不是拖动一个简单的形状,我想制作一个由各种非正交形状组成的拼图,例如将一个圆分成 5 个不同的部分。我现在遇到的问题是如何设计布局。我不知道如何制作一个真正“定制”形状的ImageView,据我从研究中发现这是不可能的。所以我现在的想法是重叠一些正方形ImageViews,每个正方形只有一个图像的子集,其余的都是透明的。因此,最终输出看起来像是一些自定义形状的ImageViews。
例子:
+ + +
因为只有内部部分是“可见的”,而圆圈的其余部分是透明的,所以当所有这些部分都放在屏幕上的同一位置时,最终图像将如下所示:
我还没有尝试过……但我预见到至少有一个问题。当我将这些碎片拖到这个拼图上时,它们都会在拖到同一个地方时“卡入”到位。因为实际上我在这里真正拥有的只是ImageView 内的一个圆圈的图片,该圆圈周围有一些不可见的矩形边界。
希望这种情况是清楚的。现在我的问题:
- 是否可以使用真正自定义形状的
ImageViews 来代替我重叠图像的想法? - 如果我认为是处理这个拼图创意的最佳方式,那么可以更改哪些属性以使所有这些拼图的“掉落”动作不会发生在同一位置?如果我想“放下”披萨形状的块,我希望它仅在靠近圆圈左上角时卡入到位。
注意:我是 Android 编程新手,对 Java/XML 也有些陌生,非常很可能我忽略了一些东西,所以请随意提出您认为合适的其他方法.
【问题讨论】:
-
对于“分层”ImageView,请在此处查看我的答案stackoverflow.com/questions/16729169/…, HTH
标签: android android-layout layout imageview