iOS lable设置富文本后在最后一行没有显示省略号的问题解决
来源:互联网 发布:电信4g网络覆盖范围 编辑:程序博客网 时间:2024/06/04 18:09
我们在开发的中,有时候为了界面的美观,不论是新闻类、购物类还是阅读类app,因为文字量比较大,不能完全显示,就会在末尾显示省略号(如图一),我们都知道,如果不设置富文本的情况下,label的属性默认是在最后添加省略号的,但是通过富文本的形式设置行间距后,省略号就不会再显示(如图二),这样的效果会给用户带来一定的阅读障碍,所以我们需要解决这个问题,解决后效果展示(如图三)
默认样式:
图一
添加行间距样式:
图二
解决添加行间距后,末尾显示省略号样式:
图三
解决方法:
通过代码的运行,我们可以看出在设置富文本之后,lable的lineBreakMode属性样式被更改,我们只需要将lineBreakMode的样式改回省略号在末尾显示,就可以解决设置富文本之后在文末显示省略号的问题,代码如下:
- (void)viewDidLoad { [super viewDidLoad]; UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(20, 120, [UIScreen mainScreen].bounds.size.width-40, 200)]; label.layer.borderColor = [UIColor darkGrayColor].CGColor; label.font = [UIFont systemFontOfSize:24.0f]; label.layer.borderWidth = 0.5f; label.numberOfLines = 3; label.text = @"月考终于考完了,我花了九牛二虎之力,却还是考得不理想,我也只能“尽人事,听天命”,可是却难以忍受失败的痛苦滋味"; [self.view addSubview:label]; NSLog(@"未设置富文本的情况下的默认的lineBreakMode样式 : %ld",(long)label.lineBreakMode); //富文本方式设置行间距 NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc]init]; paragraphStyle.lineSpacing = 10.0f; NSDictionary *attributes = @{ NSFontAttributeName:[UIFont systemFontOfSize:24.0f], NSParagraphStyleAttributeName:paragraphStyle}; label.attributedText = [[NSAttributedString alloc]initWithString:label.text attributes:attributes]; [label sizeToFit]; NSLog(@"设置富文本后,lineBreakMode样式 : %ld",(long)label.lineBreakMode); //将lineBreakMode样式改回在末尾显示省略号的样式 label.lineBreakMode = NSLineBreakByTruncatingTail; /* NSParagraphStyle typedef NS_ENUM(NSInteger, NSLineBreakMode) { NSLineBreakByWordWrapping = 0, // Wrap at word boundaries, default NSLineBreakByCharWrapping,// Wrap at character boundaries NSLineBreakByClipping,// Simply clip NSLineBreakByTruncatingHead,// Truncate at head of line: "...wxyz" NSLineBreakByTruncatingTail,// Truncate at tail of line: "abcd..." NSLineBreakByTruncatingMiddle// Truncate middle of line: "ab...yz" } NS_ENUM_AVAILABLE(10_0, 6_0); */}
阅读全文
1 0
- iOS lable设置富文本后在最后一行没有显示省略号的问题解决
- 在table中使显示的文本显示一行后其余用省略号表示
- Lable的富文本
- Lable的富文本
- 文本多行最后一行溢出隐藏显示省略号
- CSS设置多余的文本显示省略号
- CSS设置多余的文本显示省略号
- CSS设置多余的文本显示省略号
- java swing jtextarea添加文本后自动显示最后一行
- Lable 富文本代码
- ios 设置富文本
- ios富文本设置
- 设置文本溢出后以省略号显示(三步走)
- 文本换行和超出一行显示省略号
- IOS NSMutableAttributedString 富文本的设置
- [VB.NET]如何在程序启动后让视图正好显示datagridview的最后一行?
- NSTextField多行显示不下时,最后一行显示省略号
- iOS 运用富文本在UILabel上显示图片
- 多个线程多把锁
- Flask学习笔记--11
- 终止Java线程
- 调用dialog.show时报异常
- arcgis javascript 鹰眼图
- iOS lable设置富文本后在最后一行没有显示省略号的问题解决
- 资讯精选 | 流量攻击态势严峻_微软7月漏洞汇总和修复建议
- VS 调用动态链接库 PInvokeStackImbalance 对 PInvoke 函数“ ”的调用导致堆栈不对称
- Spring源码-将源码导入到eclipse
- BZOJ4720 [Noip2016]换教室 解题报告【SPFA】【期望DP】
- 9个常用iptables配置实例
- Java设计模式学习06——静态代理与动态代理
- vps(虚拟主机)搭建服务器访问不了
- C语言文件操作