Android简单的圆盘形菜单

2014-11-24 08:17:48 · 作者: · 浏览: 2

今天偶然看到一个圆盘形的菜单,还可以转动,感觉挺有意思,然后想了想,做了个简单的效果。


思路是这样的,定一个原点和一个半径,圆的四周均匀分布每个菜单。为了方便计算,菜单的坐标用度数表示,然后转化为极坐标计算。


定某个点为起始点,根据总菜单数确定每个点增加的度数,然后依次确定每个点的度数,也就确定了坐标。


代码里注释也很清楚。STONE_COUNT表示菜单的数目,可以设置为1到7,更大的数字需要图片支持,我只放了7张图片。


如果触摸的点不在圆周上,会自动计算出点到圆心的直线跟圆的交点,然后映射上去。


5个菜单的效果,画了线的:


Android


6个菜单的效果:


Android


Ok,代码也贡献出来。