frame.size.width和frame.width之间的区别

我当时正在迅速编写程序,而现在我注意到我可以直接访问CGRect框架的width和height属性,而无需使用CGSizewidth和height。那就是我现在能够编写这样的代码。

@IBOutlet var myView: UIView!

override func viewDidLoad()

{

super.viewDidLoad()

var height = myView.frame.height

var height1 = myView.frame.size.height

}

在目标C中,当我尝试编写相同的代码时,该行将height = view.frame.height引发错误。谁能告诉我这两行代码的区别(如果有)。

回答:

我只是研究了CGRect结构参考。在Swift中,定义了一个扩展,该扩展具有成员heightwidth。请看下面的代码

struct CGRect {

var origin: CGPoint

var size: CGSize

}

extension CGRect {

...

var width: CGFloat { get }

var height: CGFloat { get }

...

}

所以,你可以直接读取height,并width从价值观CGRect。如您所见,这些仅仅是getters,因此,如果尝试使用以下方法设置这些值,则会收到错误消息view.frame.height

= someValue

以上是 frame.size.width和frame.width之间的区别 的全部内容, 来源链接: utcz.com/qa/418036.html

回到顶部