swift - UImageView 的动画位置

标签 swift interface-builder

我正在尝试制作一个 UIImageView 的动画,在另一个 UIImageView 的 y 轴上上下移动,以创建一个分贝表。 看起来像这样 dbmeter

大头针是底部的小家伙。这是 2 个 UIImageView。基本上我要从声音文件中获取分贝,并更新引脚以显示分贝。我已经启动了一个计时器,以计算它需要多长时间,并且为了测试,我尝试将销钉与秒数一起移动。

func startCounter(){
       counter += 1                
       clockLabel.text = "\(secs)"
       dbPin.center.y = CGFloat(counter)
    }

大头针根本不动,我怀疑这可能与自动布局有关?

最佳答案

替换你的

dbPin.center.y = CGFloat(counter)

UIView.animate(withDuration: 0.5, animations: { 
     self.dbPin.center.y = CGFloat(counter)
     self.view.layoutIfNeeded()
})

关于swift - UImageView 的动画位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41735902/

相关文章:

Swift - 在一行代码中完成文本字段字符串检查中的数字

ios - 模态VC未打开(Swift)

swift - 自定义属性的可读显示 (IB) 名称

cocoa - 文本字段渲染

ios - 将多个参数传递给手势识别器

ios - 核心数据保存关闭

ios - 如何通过 XCode 6 中的 Interface Builder 更改 UINavigationBar 的背景图像

ios - Xcode/Swift Scrollview 布局太宽

iphone - 处理 iphone 5 & 4/4S/3G 屏幕分辨率的最佳方法是什么

ios - TableView 中删除的数据将会恢复