swift如何将`CGRect(x:400,y:500`)改为存储变量

时间:2015-02-26 20:41:24

标签: swift cgrect

我正在使用一个函数来动画我正在传递它的东西UIImageView(我将把它排除后将它传递给x和y) 如何更改CGRect(x: 400, y:500

如果我将CGRect(x: 400, y:500更改为CGRect(x: xdis, y:ydis 我在调用中得到构建失败的额外参数“width” 但工作正常

    func UpAndDown(thingToAnimate:UIImageView)
  {
    UIView.animateWithDuration(5, delay: 0, options: .CurveEaseOut, animations: {
        let xdis = 30
        let ydis = 20
        thingToAnimate.frame = CGRect(x: 400, y:500 , width: thingToAnimate.frame.width, height: thingToAnimate.frame.height)

    }, completion: { finished in
        println("we moved")
})

1 个答案:

答案 0 :(得分:1)

可能会发生这种情况,因为xdisydis的类型为Int,而CGRect则需要类型CGFloat作为参数。因此,您需要像xdis那样ydisCGFloat

let xdis: CGFloat = 30
相关问题