在android中使用imageviews的纸牌游戏手形成

时间:2013-12-22 11:41:11

标签: android

我开发了一款类似于玩家的四人黑桃卡片游戏。我使用imageviews来显示玩家的手牌。我想把每个球员的手都呈弧形(就像在现实生活中一样)。我想我应该使用轮换和翻译。我应该怎么做?你知道那些教程吗? 提前谢谢。

1 个答案:

答案 0 :(得分:3)

我的第一个想法是做以下事情:

<强>定位
要创建弧线,我会使用FrameLayout来保持ImageViews。这样做的好处是可以轻松覆盖视图。我会用中心设定位置。这样,您可以使用y = - (x*scale)^2 + offset之类的函数轻松计算位置。以下是您可以使用的示例:Click。但是你需要稍微调整一下这些值来获得一个看起来不错的功能。此外,y轴应该在屏幕的中间(或者您可以通过减去screenwidth / 2或类似的方式来修改方法的输入)。要实际定义位置,您需要修改ImageView

的边距

轮换 由于每张卡应具有不同的旋转,我将定义最大角度和最小角度。 (那些可能在15°和30°之间== pi / 12和pi / 6) 要了解有关轮换本身的更多信息,谷歌可能会有所帮助。我马上:
Scale & rotate Bitmap using Matrix in Android
Android: How to rotate a bitmap on a center point

<强> Z-顺序
要处理FrameLayout中的z顺序,您可以使用FrameLayout继承自ViewGroup的{​​{3}}。我会将卡存储在一个数组中并迭代它,在每个bringChildToFront上调用ImageView

这绝对只​​是一个起点,但如果遇到更具体的问题,你会得到更具体的问题答案!