【问题标题】:UIView does not have member animateWithDuration?UIView 没有成员 animateWithDuration?
【发布时间】:2014-08-26 12:42:33
【问题描述】:

我正在制作一个 iOS8 应用程序,我正在尝试为其中一个 UIView 设置动画。我也在使用 Swift。当我尝试在我在 Interface Builder 中创建的 UIView 上使用“animateWithDuration”方法,然后使用 IBOutlet 在代码中使用它时,Xcode 给了我一个错误,

“UIView”没有名为“animateWithDuration”的成员

我唯一导入的框架是 UIKit。有谁现在为什么这不起作用? 当我说 UIView.animateWithDuration 时,我没有收到任何错误,但是当我尝试使用在 Interface Builder 中创建的视图时,我收到了错误。

【问题讨论】:

  • 能否提供更多代码?

标签: ios animation swift ios8


【解决方案1】:

也许你说错了。应该是:

UIView.animateWithDuration(1.0, animations: { () -> Void in
    //changes to animate
})

这就是在swift中调用类方法的方式!

【讨论】:

    【解决方案2】:

    我想你想用 UIView 子类的实例来调用这个方法。但是你不应该它是类方法,所以使用 UIView(正如 Heliem 所说)并在它的闭包内进行更改。

    var myView:MyViewSubclass = MyViewSubclass()
    
    UIView.animateWithDuration(1.0, animations: { () -> Void in
    //changes to animate myView
         //to animate frame changes
         myView.Frame = newFrame
    
    })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多