Ios 快速扩展以获取框架右侧的坐标位置

Ios 快速扩展以获取框架右侧的坐标位置,ios,swift,cocoa-touch,uikit,Ios,Swift,Cocoa Touch,Uikit,我以编程方式放置UI元素,因此我经常需要知道其他视图框边的当前位置,以便根据这些位置放置另一个UI元素,我发现自己重复此代码的次数比我希望的要多: var mybutton = UIButton(frame: CGRectMake(10,10,20,20)) var myOtherButton = UIButton(frame: CGRectMake(mybutton.frame.origin.x + mybutton.frame.width, mybutton.frame.origin.y

我以编程方式放置UI元素,因此我经常需要知道其他视图框边的当前位置,以便根据这些位置放置另一个UI元素,我发现自己重复此代码的次数比我希望的要多:

var mybutton = UIButton(frame: CGRectMake(10,10,20,20))

var myOtherButton = UIButton(frame: CGRectMake(mybutton.frame.origin.x + mybutton.frame.width, mybutton.frame.origin.y + mybutton.frame.height, 20, 20))
基本上,我添加了
origin
frame.width
,我希望能提供一些关于扩展的线索,以使该值键入更少的代码。

尝试如下:

extension UIButton {
    var subFrame: CGRect {
        return CGRectMake(frame.origin.x + frame.width, frame.origin.y + frame.height, frame.width, frame.height)
    }
}

let mybutton = UIButton(frame: CGRectMake(10,10,20,20))
print(mybutton.subFrame)   // {x 30 y 30 w 20 h 20}

let myOtherButton = UIButton(frame: mybutton.subFrame)