Swift 使用';设置动画(持续时间:延迟:选项:动画:)';

Swift 使用';设置动画(持续时间:延迟:选项:动画:)';,swift,compilation,overloading,Swift,Compilation,Overloading,我已经升级到最新发布的Xcode 8,并且 let mediumInterval: TimeInterval = 0.6 UIView.animate(withDuration: mediumInterval) { print("test") } 正在给我错误使用“animate(withDuration:delay:options:animations:)”时出现歧义。我真的看不出这里有什么歧义。。。UIView中声明的所有animate函数都是 open class func anim

我已经升级到最新发布的Xcode 8,并且

let mediumInterval: TimeInterval = 0.6
UIView.animate(withDuration: mediumInterval) {
  print("test")
}
正在给我错误
使用“animate(withDuration:delay:options:animations:)”时出现歧义。
我真的看不出这里有什么歧义。。。
UIView
中声明的所有
animate
函数都是

open class func animate(withDuration duration: TimeInterval, delay: TimeInterval, options: UIViewAnimationOptions = [], animations: @escaping () -> Swift.Void, completion: (@escaping (Bool) -> Swift.Void)? = nil)

open class func animate(withDuration duration: TimeInterval, animations: @escaping () -> Swift.Void, completion: (@escaping (Bool) -> Swift.Void)? = nil)

open class func animate(withDuration duration: TimeInterval, animations: @escaping () -> Swift.Void)

open class func animate(withDuration duration: TimeInterval, delay: TimeInterval, usingSpringWithDamping dampingRatio: CGFloat, initialSpringVelocity velocity: CGFloat, options: UIViewAnimationOptions = [], animations: @escaping () -> Swift.Void, completion: (@escaping (Bool) -> Swift.Void)? = nil)
==获取要编译的xcode的解决方案===

UIView.animate(withDuration: mediumInterval, animation: {
  print("test")
}, completion: nil)
将汇编,

UIView.animate(withDuration: mediumInterval, animation: {
  print("test")
})

将一如既往地失败。我仍然不明白发生了什么…

我一直在使用的PromiseKit似乎有一个UIView的扩展,它定义了一个冲突版本的animate()


XCode无法告诉我这两个相互冲突的版本来自何处,所以我花了一段时间才理解。我已经报告了这个问题。

我也有同样的错误,因为我忘了在“动画”中添加“s”。 所以也许:

UIView.animate(withDuration: mediumInterval, animation: {
  print("test")
})

因此无法编译。

请提供一个。你把这个叫哪里?常量.mediumInterval是如何定义的?对不起,我错过了那部分。谢谢我更正了
mediumInterval
我不认为我在哪里调用它有助于解释编译错误,但如果有,我将从继承
UIViewController
的类方法调用if。此错误有时可能会产生误导。注释掉动画并尝试编译。看看它是否真的是那一行。是的,我现在已经删除了动画,事情编译得很好。我用一种方法来编辑,让xcode编译,但这并不能解释发生了什么问题