要设置我的UILabel的背景,我使用
theLabel.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"blah"]];
现在我的问题是背景图像实际上大于我的UILabel的大小。有没有一种简单的方法可以使背景缩小到UILabel的大小?
答案 0 :(得分:2)
这是我最终想出来的方式
- (void)reziseLabelBackgound
{
UIImage *rawImage = [UIImage imageNamed:@"blah"];
CGSize bkgSize = self.myLabel.bounds.size;
UIGraphicsBeginImageContext(bkgSize);
[rawImage drawInRect:CGRectMake(0,0,bkgSize.width,bkgSize.height)];
UIImage *bkgImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
self.myLabel.backgroundColor = [UIColor colorWithPatternImage:bkgImage];
}
答案 1 :(得分:1)
编辑 - 被误解的问题。
不,标签无法做到这一点。您可能需要使用透明标签,其下方的UIImageView与标签大小相同,contentMode
设置为您需要的值。