避免在UIView内部拉伸UIImageView

时间:2012-11-06 09:44:37

标签: iphone objective-c ios

我在Storyboard的UIViewController中有一个UIView。里面有一个UIImageView。

我想以编程方式增加UIView的高度:

CGRect frame = headerV.frame;
frame.size.height = 100;
headerV.frame = frame;

问题是它还可以拉伸UIImageView。如果我不想以编程方式添加UIImage,我该如何解决这个问题?

4 个答案:

答案 0 :(得分:2)

在故事板中,单击UIImageView,打开尺寸检查器并确保禁用拉伸宽度和高度(在自动调整中)。它应该是这样的:

enter image description here

答案 1 :(得分:1)

将您的UIView的autoresizesSubviews属性设置为NO

答案 2 :(得分:0)

如果您不想拉伸图像,请将其设置为contentMode

imageView.contentMode = UIViewContentModeCenter;

答案 3 :(得分:0)

选项1 - 使用调整大小标记

A)在headerV.autoresizesSubviews = NO上禁用autoresizesSubviews 或
B)在imageView上设置正确的autoresizingMask。这样做:
imageView.autoresizingMask = UIViewAutoresizingFlexibleBottomMargin
如果它应该坚持到顶部(或smth。否则 - 你想要的任何设置)

选项B - 自动布局

相应地设置你的自动布局,)

(PS:你可以在interfaceBuilder或代码中完成所有这些。)