NSLineBreakMode的使用

// 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);

在项目中我们经常用UILabel来显示文本,有时候需要换行显示,这种情况我们会设置UILalbel的lineBreakMode属性,写了个小demo,比较直观的来看看到底各自是什么效果。

Clip:裁剪   两行显示UILabel能显示多少就显示多少,第一行末尾最后一个单词没有被截断而是全部显示到第一行,第二行末尾是按字符裁剪,导致单词typically只剩下typic

Character Wrap:字符换行, 与Clip的区别在第一行,将最后一个单词截断了

Word Wrap:单词换行,第一行末尾和第二行末尾都保留完整的单词

Truncate Head:头部截短,第一行末尾是完整单词,第二行最前面三个点来表示省略内容

Truncate Middle:中间截短,第一行末尾是完整单词,第二行中间三个点来表示省略内容

Truncate Tail:尾部截短,第一行末尾是完整单词,第二行尾部三个点来表示省略内容

图一  纯英文文本
图二 纯中文文本
图三  中英文文本
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容