0

环境:Xcode4.3.1、sdk5.1

我只想拉伸图像的一部分,所以我用这样的代码编写:

    leftImage = [UIImage imageNamed:@"leftStyleBackground.png"];
UIEdgeInsets insets = UIEdgeInsetsMake(2, 14, 2, 2);
if ([leftImage respondsToSelector:@selector(resizableImageWithCapInsets:)])
    leftImage = [leftImage resizableImageWithCapInsets:insets];
else {
    leftImage = [leftImage stretchableImageWithLeftCapWidth:14 topCapHeight:2];
}

但是,结果是原始图像仅重复出现以填充 uiimageview 框架。

如果我使用 –stretchableImageWithLeftCapWidth:topCapHeight: 方法,图像可以正确拉伸。

知道为什么 ios5 中的新方法不起作用吗?

4

1 回答 1

1

resizableImageWithCapInsets:平铺图像区域。

如果您需要拉伸:

对于 6.0 及更高版本 - 使用: resizableImageWithCapInsets:resizingMode: 并resizingMode设置为UIImageResizingModeStretch.

在 6.0 之前 - 使用:stretchableImageWithLeftCapWidth:topCapHeight:

于 2012-11-07T12:54:59.253 回答