我通过一些图片用UIButton做了一个动画。 这是代码:
@IBAction func Touchdown(sender: AnyObject) {
Izer.setImage(image1, forState: UIControlState.Normal)
Izer.imageView!.animationImages = [image1, image2, image3, image4, image5,
image6, image7,image8]
Izer.imageView!.animationDuration = 0.9
Izer.imageView!.startAnimating()
playButton.enabled = false
}
@IBAction func TouchUp(sender: AnyObject) {
soundRecorder.stop()
playButton.enabled = true
}
当我触摸按钮时,动画开始。但我想通过我的Touchup功能来阻止它。
我该怎么办?
谢谢,对不起我的坏英语:(
答案 0 :(得分:2)
将此添加到您的TouchUp
功能:
Izer.imageView!.stopAnimating()
P.S。在Apple文档中找到有关函数的信息的好地方 - 它确实非常好。所以this is the page for an imageView如果您在任务下左侧查看,或者如果向下滚动,则可以看到您可以调用的函数和属性以及为动画设置动画设置。
答案 1 :(得分:1)
好的,看起来您希望按钮充当拨动开关。在第一次触摸时,该按钮开始为图像视图设置动画并记录某些内容。再次触摸时,动画停止,按钮再次启用。
您可以通过声明跟踪按钮状态的bool变量来实现此目的。如果布尔值设置为true,则运行动画&记录。如果布尔值为false,则停止并记录。
以下是示例代码:
class ViewController: UIViewController {
@IBOutlet weak var mainView: UIView!
var isButtonPressed = false{
// Adding a Property Observer, that reacts to changes in button state
didSet{
if isButtonPressed{
// Run the Recording function & Animation Function.
startAnimationAndRecording()
}else{
// Stop the Recoding function & Animation Function.
stopAnimationAndRecording()
}
}
}
@IBAction func changeButtonValue(sender: UIButton) {
// Toggle the button value.
isButtonPressed = !isButtonPressed
}
func startAnimationAndRecording(){
// Add your animation and recording code here.
}
func stopAnimationAndRecording(){
//Add your stop Animation & Stop Recording code here.
}
}