UILabel使用UIImage - NSAttributedString进行攻击

时间:2017-08-11 11:40:17

标签: ios objective-c

UILabel with UIImage overlay

我已经研究了很多TTTAttributedLabel等等。

我也试过下面的代码

NSString* path = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"txt"];
NSString* content = [NSString stringWithContentsOfFile:path
                                              encoding:NSUTF8StringEncoding
                                                 error:NULL];
NSMutableAttributedString *s = [[NSMutableAttributedString alloc] initWithString:content];
[s addAttribute:NSBackgroundColorAttributeName
          value:[UIColor colorWithPatternImage:[UIImage imageNamed:@"green"]]
          range:NSMakeRange(0, s.length)];
_lblTest.attributedText = s;

并获得类似this的输出。

我不需要代码,但任何人都可以帮我解决问题吗?

1 个答案:

答案 0 :(得分:1)

我认为你需要为此做一些事情。

首先配置您的green图片,使其拉伸并平铺。在资产目录中执行此操作。点击“显示切片”按钮,可以固定图像的右侧,将结尾添加到其上。

其次看起来您的图像太高,所以要缩短图像。您必须以某种方式手动执行此操作,并且我不能100%确定是否有动态的方法。

如果您确保图像的高度与文本行的高度相同,那么您将获得正确的重复图案。

可能有更好的方法可以做到这一点,但现在应该可行。