iOS 幸运大抽奖
2022-08-06 本文已影响0人
海边的遐想
image.png
image.png
思路:
首先必须将UI设计好;
声明一个viewArray对象用于存放九宫格中的内容列表,包括奖项、抽奖按钮、谢谢参与等,然后通过for循环将这些view填充到九宫格中;
声明一个currentRunCount来标记当前被选中的项;
通过CJModel 为每一个格子设置不同的值 ,这样,被选中的格子就和其他格子区分开来了;
抽奖动画实现原理:基于上面的准备,我们只要更改currentRunCount的值,就能切换选中格子,再结合CABasicAnimation动画就可以形成流畅的动画效果;
为抽奖按钮设置一个click事件,事件回调流程: 九宫格先遍历切换4圈,之后再向后台请求数据获得中将号码(九宫格的序号),然后再根据序号遍历到相应位置后给出提示:中奖了或者很遗憾没有中奖;
1,九宫格展示UI:
image.png
交换位置
-
(void)exchangeFrameWithView:(UIView *)firstView otherBtn:(UIView *)secondView {
CGRect frame = firstView.frame;
firstView.frame = secondView.frame;
secondView.frame = frame;
}
2,按钮的点击:
image.png
3,开始动画:
image.png
4,旋转动画
image.png
5,4圈后停止动画
image.png