gpt4 book ai didi

ios - UIView 动画 - 奇怪的行为(Swift)

转载 作者:行者123 更新时间:2023-11-30 13:42:30 24 4
gpt4 key购买 nike

我有一个包含动画图片(图片序列)的 UIImageView 我试图将 UIImageView 从当前位置移动到屏幕右侧(从屏幕中间到右侧)以创建运行效果字符

当我按下想要触发动画的按钮时,图像突然消失,然后从屏幕左侧到中间进行动画处理。我不知道为什么 UIImageView 被移出屏幕(左侧)

这是我的代码

@IBAction func correctButtonPressed(sender: AnyObject) {
if isTrue {
winAudio.play()
playRunAnimation()
UIView.animateWithDuration(3, animations: { () -> Void in
var frame = self.animatedImage.frame
frame.origin.x += (self.animatedImage.superview?.frame.width)!
self.animatedImage.frame = frame
})
}
}

编辑:

这就是我为 UIImageView 制作动画的方式

func playIdelAnimation() {
self.image = UIImage(named: "Idel1.png")
var imageArray = [UIImage]()
for i in 1...10 {
let str = "Idle\(i).png"
let imageName = UIImage(named: str)!
imageArray.append(imageName)
}
self.animationImages = imageArray
self.animationDuration = 0.5
self.startAnimating()
}

self.image = UIImage(命名为:“Idel1.png”)就是给UIImageView设置一张默认图片然后我创建一个 UIImage 数组以在 UIImageView 中对其进行动画处理

使用( self ),因为我有一个 UIImageView 的自定义类

最佳答案

首先,您需要从界面构建器中引用 ImageView 的约束(不要忘记将界面构建器中的 socket 与约束连接起来):

 @IBOutlet weak var leftConstraint: NSLayoutConstraint!
@IBOutlet weak var rightConstraint: NSLayoutConstraint!

我假设您的图像具有leftConstraint.constant = 0rightConstraint.constant = self.view.frame.width

然后你用以下方式制作动画:

self.leftConstraint.constant = self.view.frame.width
self.rightConstraint.constant = self.view.frame.width + self.animatedImage.frame.width

UIView.animateWithDuration(3.0) {
self.view.layoutIfNeeded()
}

我希望这有帮助。祝你好运。

关于ios - UIView 动画 - 奇怪的行为(Swift),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35395075/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com