多行的UILabel,不同行的字体样式不一样

今天突然有这么一个需求:

               3行的UILabel,每行字体的颜色、大小不同。


解决办法:利用字符串分割和富文本编辑


Talk is too cheap,Show you my code。


NSString*str =@"中华人民\n隆起南阳\n南沙群岛";

NSArray*strArr = [str componentsSeparatedByString:@"\n"];

NSMutableAttributedString*attributeStr = [[NSMutableAttributedString alloc]initWithString:str];

[attributeStr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:25]range:NSMakeRange(0,4)];

[attributeStr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:13]range:NSMakeRange(5,4)];

[attributeStr addAttribute:NSForegroundColorAttributeName value:[UIColor greenColor]range:NSMakeRange(10,4)];

UILabel*label = [[UILabel alloc]initWithFrame:CGRectMake(20,200,380,300)];

label.backgroundColor= [UIColor lightGrayColor];

label.numberOfLines=3;

label.attributedText= attributeStr;

[self.view addSubview:label];

效果:


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容