我有一组由我的控制器自动生成的UILabel
。我想要的是能够为不同颜色的个别字符着色。我怎样才能做到这一点?
答案 0 :(得分:2)
使用UILabel
无法做到这一点。通常用于封装带格式的字符串的对象是NSAttributedString
,但UILabel
无法显示它们。
您必须使用CATextLayer
代替UILabel
替换属性字符串的多个替代品之一。有关详细信息,请参阅this question的答案。
答案 1 :(得分:0)
您无法使用不同的文字颜色制作UILabel
。您可以为UILabel指定某种字体和某种背景颜色。但你可以做一件事。如下。
for(int i=0;i<5;i++){
UILabel *label = [[UILabel alloc]init];
label.tag = i;
[self.view addSubView:label];
}
for(UIView *view in [self.view subViews]){
if([view isKindOfClass[UILabel class]]){
switch (view.tag){
case 1:
view.textColor = [UIColor greenColor];
view.frame = CGRectMake(0,y,37,10);
(UILabel*)view.text = @"Hello";
[view sizeToFit];
y=y+view.frame.size.width;
break;
case 2:
view.textColor = [UIColor redColor];
view.frame = CGRectMake(0,y,37,10);
(UILabel*)view.text = @"World";
[view sizeToFit];
y=y+view.frame.size.width;
break;
//
//
}
}