0

我有一张图片需要平铺作为 UIView 的背景:

UIView *buttonView = [UIView new];
[buttonView setTranslatesAutoresizingMaskIntoConstraints:NO];
[buttonView addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:[buttonBar(100)]" options:0 metrics:nil views:NSDictionaryOfVariableBindings(buttonView)]];
[buttonView setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"bottomBar-bg-100.png"]]];

图像是 200x200,但我需要它是 100。如果我将图像添加为:

imageView.image = [UIImage imageWithName:@"bottomBar-bg-100.png"]

它将被压缩到 100。但是当我使用该colorWithPatternImage:方法时,它不会将 200 高的图像压缩为 100 高。

约束和使用约束是否存在一些愚蠢之处colorWithPatternImage:,或者这就是它的colorWithPatternImage:工作原理?

4

1 回答 1

0

你知道resizableImageWithCapInsets:resizingMode:吗?这是将图像转换为可以拉伸或平铺为可用尺寸的最佳方式。

于 2013-01-15T18:22:07.980 回答