UILable 中文加上英文或者其他非中文字符自动换行的问题

测试的时候给label 复制“中文”+“英文字符”总长度满足换行,设置numberOfLines为0。 问题出现了,总是在中文后自动换行,经过多方查询,发现label的lineBreakMode属性默认是NSLineBreakByWordWrapping,该属性作用是以空格为边界保留单词。系统默认吧中文后边的所有英文当做了一个单词来保留,英文太长一行显示不下所以系统就会自动换行。其实很多编辑器也是如此。 
以下是lineBreakMode的各种类型: 
NSLineBreakByWordWrapping = 0 //以空格为边界,保留单词。 
NSLineBreakByCharWrapping //保留整个字符 
NSLineBreakByClipping //简单剪裁,到边界为止 
NSLineBreakByTruncatingHead //前面部分文字以……方式省略,显示尾部文字内容 
NSLineBreakByTruncatingTail //结尾部分的内容以……方式省略,显示头的文字内容。 
NSLineBreakByTruncatingMiddle //中间的内容以……方式省略,显示头尾的文字内容。

所以要想不让他自动换行就把属性设置成保留整个字符即:NSLineBreakByCharWrapping

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值