自定义 UIView 的行为比实际的 UIView

Custome UIView behaves than actual UIView

我在情节提要中创建了自定义 UIView class "XXX"。我在视图控制器中创建了对象。对象名称是 "YYY"。现在我正在尝试调用 animateWithDiruation 方法。

 @IBOutlet var YYY: XXX!

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

它抛出错误。 XXX 没有名为 animateWithDuration 的成员。

但是下面的代码工作正常。

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

如何使用自定义 UIView 调用 animateWithDuration 方法class?

谢谢

如果您查看文档,您会发现 animateWithDuration 是一个 class 方法。意思是,您只能使用 UIView.animateWithDuration ....

访问它

animateWithDuration 是一个静态方法(class),您 运行 在 UIView class.

您应该使用 UIView.animateWithDuration 为您的 YYY 自定义视图设置动画,例如:

UIView.animateWithDuration(1.0, animations: { () -> Void in
    //changes to animate
    XXX.center = CGPoint(x: 10, y: 20)
})