Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios view.bounds.size.height-与-view.bounds.height-有什么区别吗?_Ios_Swift_Uiview - Fatal编程技术网

Ios view.bounds.size.height-与-view.bounds.height-有什么区别吗?

Ios view.bounds.size.height-与-view.bounds.height-有什么区别吗?,ios,swift,uiview,Ios,Swift,Uiview,我注意到,在使用IOS X-Code(Swift 4.0)的情况下,我至少可以通过以下两种方式询问视图的高度V: V.bounds.size.height 而且 V.bounds.height 这两者之间有实际区别吗 我做了选项点击的事情(它给出了不同的定义,但没有解释任何实际的区别或原因,一个超过另一个)。。。和堆栈溢出。。。但是在stackoverflow上,所有的结果都在讨论边界和帧之间的差异。。。这不是我要问的。V.bounds.height只是一个GET属性。无法为此属性设置值 例

我注意到,在使用IOS X-Code(Swift 4.0)的情况下,我至少可以通过以下两种方式询问视图的高度V:

V.bounds.size.height
而且

V.bounds.height
这两者之间有实际区别吗


我做了选项点击的事情(它给出了不同的定义,但没有解释任何实际的区别或原因,一个超过另一个)。。。和堆栈溢出。。。但是在stackoverflow上,所有的结果都在讨论边界和帧之间的差异。。。这不是我要问的。

V.bounds.height
只是一个GET属性。无法为此属性设置值

例如:

self.view.bounds.height = 5
此错误消息导致

无法分配给属性:“height”是仅获取的属性

如果要为此属性指定值,则可以写入

self.view.bounds.size.height = 5

因此,您可以设置此对象的值。看一看

差别很小<代码>视图.边界.高度是一个快捷方式。您不能编辑它:


view.bounds.height=150
不起作用,但
view.bounds.size.height=150
会起作用。

实际上
V.bounds.size.height
height既有get-set属性,又有where-as-in
V.bounds.height
height是唯一的getter属性,它总是返回矩形的高度


对于getter透视图,两者都是相同的。

除了
view.bounds.height
是只读的之外,还有另一个区别:如果宽度/高度为负,
view.bounds.height
将返回标准化值(正值),而
view.bounds.size.height
将返回实际值。这些getter相当于Obj-C中的
CGRectGetWidth()
cgrectheight()
。所有这些getter都来自
CGRect
结构(
widt
height
minX
minY
)正在返回
CGRect
维度的规范化值,如果您想在帧计算中使用它们,建议使用它们。

No,,,,,,,,,,,,,,,,,,,,,还有一个小区别,这些getter为您提供
CGRect
的规范化值。见下面我的答案。:)