iOS swift3.0 刮刮乐效果(刮图层效果,抽奖效果)实现

最近完成了刮刮乐功能,用的swift3.0语言,特此把代码分享出来。

    // 刮奖  实现刮刮乐效果
    override func touchesMoved(_ touches: Set<UITouch>, with event: UIEvent?) {
        // 触摸任意位置
        let touch:UITouch =  (touches as NSSet).anyObject() as! UITouch
        // 触摸位置在图片上的坐标
        let cententPoint:CGPoint = touch.location(in: self.imageTuceng)
        // 设置清除点的大小
        let rect = CGRect.init(x: cententPoint.x, y: cententPoint.y, width: 20, height: 20)
        // 默认是去创建一个透明的视图
        UIGraphicsBeginImageContextWithOptions(self.imageTuceng.bounds.size, false, 0)
        // 获取上下文(画板)
        let ref = UIGraphicsGetCurrentContext()
        // 把imageView的layer映射到上下文中
        self.imageTuceng.layer.render(in: ref!)
        // 清除划过的区域
        ref?.clear(rect)
        // 获取图片
        let image  = UIGraphicsGetImageFromCurrentImageContext()
        // 结束图片的画板, (意味着图片在上下文中消失)
        self.imageTuceng.image = image
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,663评论 25 708
  • 因为要结局swift3.0中引用snapKit的问题,看到一篇介绍Xcode8,swift3变化的文章,觉得很详细...
    uniapp阅读 4,542评论 0 12
  • 小熊童子阅读 308评论 5 1
  • 果果说他喜欢吃大蒜,说:“果果老是喜欢吃大蒜。”,果果最近很喜欢用连接词,比如因为…所以、终于、老是等。 果果揪着...
    陈龙英阅读 292评论 0 0
  • 文/大金 廿年海角钓虚名,自愧无功还此城。 岁抵中流千著力,迹如毫发百寻轻。 敢憎生计催腰折,转爱溪边卜筑成。 更...
    闽南大金阅读 186评论 0 0