我想在我的项目中创建这种加载样式,我真的不知道如何。我真的是swift ui组件的初学者。我想在我的警报视图中添加此加载样式,并在获得结果后我想解雇。所以,我想了解如何制作它并添加到警报视图以提出礼物和解雇,请帮忙吗?
答案 0 :(得分:1)
首先,您无法将其设置为默认警报视图,但您可以创建自定义视图并实现此目的。
为此您需要一个圆形图像,您可以将其添加到图像视图中并添加一个标签,其中包含文本Loading ..将两者都添加到View中,如下图所示:
之后连接所有这些的插座。并且您可以根据需要显示该视图,当您显示此视图时,您可以使用以下代码旋转图像:
func rotateViewLayer() {
let rotateView = CABasicAnimation()
rotateView.fromValue = 0.degreesToRadian
rotateView.toValue = 360.degreesToRadian
rotateView.duration = 1
rotateView.repeatCount = Float.infinity
rotateView.removedOnCompletion = false
rotateView.fillMode = kCAFillModeForwards
rotateView.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear)
imageView.layer.addAnimation(rotateView, forKey: "transform.rotation.z")
}
你需要这个扩展名:
extension Int {
var degreesToRadian : CGFloat {
return CGFloat(self) * CGFloat(M_PI) / 180.0
}
}
当您隐藏此视图时,您可以使用以下方法从imageview中删除动画:
imageView.layer.removeAllAnimations()
您可以查看结果HERE。
您也可以使用THIS惊人的图书馆。
HERE是完整的工作项目。
希望这会对你有所帮助。