【发布时间】:2016-05-25 12:28:10
【问题描述】:
我有一个包含动画图片(图片序列)的 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(named: "Idel1.png") 就是给UIImageView设置一张默认图片 然后我创建一个 UIImage 数组以在 UIImageView 中对其进行动画处理
使用(self),因为我有一个 UIImageView 的自定义类
【问题讨论】:
-
你对动画图像使用了一些约束吗?
-
是的,我确实使用了一些限制
-
它们可能会导致问题,因为如果您更改图像的原点,约束仍然存在并且希望将图像保持在其位置。
-
好的,谢谢,我会尝试删除它们并以编程方式放置 UIImageView
-
不,我认为这不是最好的解决方案。只需更改动画中的约束即可。
标签: ios swift animation uiview