是否有可能有一个 UIView 可以重复设置其框架,例如在正 x 轴上增加其大小,但不调整大小或挤压图像?
例如,我想将 CGPath 绘制到 320 x 100 帧中,但仅显示帧在 x 值上增加,y 值为 100,因此它会在扩展时显示图像。编辑:我已经绘制了 CGPath,但它当前会随着容纳它的框架的扩展而调整大小。
所以视图不应该重绘或调整其内容的大小,而是将其内容固定在适当的位置,但是当它的框架放大时,只有更多的图像变得可见。
有没有办法做到这一点?
如果您在其drawRect:
方法中绘制了视图,则视图的contentMode
属性将确定当其框架更改时视图的内容会发生什么。
的值在类参考contentMode
中进行了描述。UIViewContentMode
UIView
默认情况下,视图contentMode
是UIViewContentModeScaleToFill
:
如有必要,通过更改内容的纵横比来缩放内容以适应其自身的大小。
听起来您可能想要UIViewContentModeTopLeft
:
对齐视图左上角的内容。
如果我理解你,你有一个主视图和一个 UIImageView 作为子视图。如果您将 UIImageView 的 autoResizingMask 设置为不调整大小 - 它只是锚定到左侧 x 和 y 轴 - 应该这样做。