我有简单的基于视图的应用程序。我只采取了UILabel
on it.
以下是我在 viewDidLoad 中的代码:
lblBack.textColor = [UIColor blueColor];
UIImage *img = [UIImage imageNamed:@"cn3.png"];
lblBack.backgroundColor = [UIColor colorWithPatternImage:img];
lblBack.text = @"Hello World!!!...";
// UIImageView *imgView = [[UIImageView alloc] initWithImage:img];
//
// CGRect rect = CGRectMake(0, 0, lblBack.frame.size.width, lblBack.frame.size.height);
// [imgView setFrame:rect];
// NSLog(@"Rect : %@",NSStringFromCGRect(rect));
// [img drawInRect:rect];
// imgView.contentMode = UIViewContentModeScaleAspectFill;
// imgView.contentMode = UIViewContentModeScaleAspectFit;
// imgView.contentMode = UIViewContentModeScaleToFill;
// [lblBack addSubview:imgView];
评论显示了我尝试过的一些事情。我得到以下输出:
在此图中,一张图像重复了 3 次。但我希望该图像应该被拉伸以填充标签宽度。
我参考了之前的一些链接,这些链接显示了我在背景中添加图像并使用clearColor
for UILabel
。还看到了在后台添加自定义视图的示例。但所有这些我都不想使用,除非我没有其他解决方案......
我只想执行所有操作UILabel
只是......没有其他控制除了UIImage
or UIImageView
我想用..
Dhiren 尝试这个代码:
UIImage *img = [UIImage imageNamed:@"cab.png"];
CGSize imgSize = testLabel.frame.size;
UIGraphicsBeginImageContext( imgSize );
[img drawInRect:CGRectMake(0,0,imgSize.width,imgSize.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
testLabel.backgroundColor = [UIColor colorWithPatternImage:newImage];
我已经测试过这段代码。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)