在 iOS 中为 UIImageView 之外的内容设置内容模式
Setting content mode for something besides UIImageView in iOS
This answer shows the various effects of setting the content mode 一个 UIImageView
.
由于 UIView
在 Interface Builder 中也有内容模式设置,我想知道为什么设置它不会影响其中的任何子视图。
这是我试过的一个例子。蓝色视图是 UIView
,黄色视图是 UILabel
。
但是如果我将 UIView
的模式设置为顶部,标签就会停留在同一个位置。
内容模式是否仅适用于 UIImageViews
?如果它对 UIViews
不起作用,为什么它还在那里?
contentMode
仅修改视图的内容,而不修改其子视图的内容。因此,如果您有一个自定义视图并在其 drawRect
中绘制了一些内容,那么您会发现每次更改视图的 contentMode
时它都会发生变化。
现在在 UIImageView
的情况下,图像实际上是视图的内容(在其 drawRect
中内部绘制),因此当您更改 contentMode
你的 UIImageView。
This answer shows the various effects of setting the content mode 一个 UIImageView
.
由于 UIView
在 Interface Builder 中也有内容模式设置,我想知道为什么设置它不会影响其中的任何子视图。
这是我试过的一个例子。蓝色视图是 UIView
,黄色视图是 UILabel
。
但是如果我将 UIView
的模式设置为顶部,标签就会停留在同一个位置。
内容模式是否仅适用于 UIImageViews
?如果它对 UIViews
不起作用,为什么它还在那里?
contentMode
仅修改视图的内容,而不修改其子视图的内容。因此,如果您有一个自定义视图并在其 drawRect
中绘制了一些内容,那么您会发现每次更改视图的 contentMode
时它都会发生变化。
现在在 UIImageView
的情况下,图像实际上是视图的内容(在其 drawRect
中内部绘制),因此当您更改 contentMode
你的 UIImageView。