Skip to content

1242128273wangpeng/TurnTable

Repository files navigation

TurnTable

客户和服务者之间的转盘互动游戏

绘制转盘的思路:canves的旋转,所有的内容都直接画在转盘的中间,转盘每个区域就是通过旋转canves的操作,先画转盘的选项区域,旋转的角度为当前的角度和下一个角度之和的一半。canves.save后再画转盘项上的文字和图片,排版换行服务端在文字中插入"\n",先测量文字paint.measureText或者图片bitmap.width,起始位置就为(width-content_width)/2,bitmap需要Bitmap.createScaledBitmap按比例进行缩放之后再绘制到对应的位置,中途可能需要canves.translate移动画布的起始点,绘制完之后再次重置起点,之后再旋转和绘制选项区域类似,所有绘制完成再 canvas.restore()

旋转转盘的思路:RotateAnimation动画,旋转角度和上面类似但是当前的角度加上下一个角度之和的一半,依次累加到结果项,这累加的角度是顺时针的,所以结果需要用360减去累加的角度。并且加了AccelerateDecelerateInterpolator,这个差值器是开始和结束都减速,中间过程加速。

绘制由于在onDraw方法中,为了保证帧率保证流畅度,尽量在之前就创建好对象分配好内存,不要在该方法中执行。

图片说明:

动画效果:

About

客户和服务者之间的转盘互动游戏

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages