Swift 3中的刮刮卡效果

时间:2016-11-15 13:08:42

标签: ios swift xcode core-graphics

我正在尝试在Swift 3中为我的应用程序实现一个Scratch Card效果,我找到了一些例子,但他们是在Objective C(show scratch-card effect with the help of using scratch and win example

本质上,用户用手指在图像上滑动,并在滑动时在手指下方显示另一个图像。

任何人都知道如何在Swift 3中执行此操作?任何帮助非常感谢

3 个答案:

答案 0 :(得分:1)

您可以使用ScratchCard库。它有简单的API,但我不知道Swift 3兼容。无论如何,你可以重写它或检查它的实现。

答案 1 :(得分:1)

检查ScratchCardImageView

Swift 3 示例

一个简单的UIImageView子类,允许您的UIImageView成为刮刮卡。

enter image description here

答案 2 :(得分:-1)

我找到了一个适合您要求的图书馆。它与Swift 3兼容。 试试这个SRScratchView

ScreenShot

 var lineType: CGLineCap = .round
 var lineWidth: CGFloat = 30.0

 func scrachBetween(fromPoint: CGPoint, currentPoint: CGPoint) {

        UIGraphicsBeginImageContext(self.frame.size)

        image?.draw(in: self.bounds)

        let path = CGMutablePath()
        path.move(to: fromPoint)
        path.addLine(to: currentPoint)

        let context = UIGraphicsGetCurrentContext()!
        context.setShouldAntialias(true)
        context.setLineCap(lineType)
        context.setLineWidth(lineWidth)
        context.setBlendMode(.clear)
        context.addPath(path)

        context.strokePath()

        image = UIGraphicsGetImageFromCurrentImageContext()


        UIGraphicsEndImageContext()
    }