如何在单个 UI 按钮上启动和停止五彩纸屑视图?



我是Xcode的初学者。我正在尝试制作一个在单击按钮时显示五彩纸屑的应用程序。但是,当我按下按钮时,会显示五彩纸屑,但它永远不会停止。它阻止了按钮和视图。我正在使用Cocoapod - SAConfettiView。

这段代码在 Xcode 10 上。我相信五彩纸屑挡住了主视野。我使用PlayConfetti作为IBaction函数。

@IBAction func playConfetti(_ sender: UIButton, forEvent event: SAConfettiView) {
let confettiView = SAConfettiView(frame: self.view.bounds)
confettiView.intensity = 1
confettiView.type = .Star
confettiView.startConfetti()
view.addSubview(confettiView)
}

我必须使用 If-Else 语句吗? 谢谢!

更新的答案

若要停止SAConfettiView调用函数,

confettiView.stopConfetti()

将按钮操作代码更改为以下内容:

let confettiView = SAConfettiView()
@IBAction func startClicked(_ sender: Any)
if confettiView.isActive() {
confettiView.stopConfetti() 
confettiView.removeFromSuperview() 
}
else{
confettiView = SAConfettiView(frame: self.view.bounds)
confettiView.intensity = 1
confettiView.type = .Star
confettiView.startConfetti()
view.addSubview(confettiView)
self.view.bringSubviewToFront(sender as! UIButton)
}
}

相关内容

  • 没有找到相关文章

最新更新