如何实现AppStore查看更多的方法
UITextView-More
使用UITextKit 实现“更多”的折叠效果

主要代码
获取最后一行Rect
| 1 | var lastRect = CGRect.zero | 
增加 exclusionPaths
| 1 | textContainer.exclusionPaths = [UIBezierPath.init(rect: rect)] | 
备注
- UITextView默认携带左右边距,通过- UITextView.textContainer.lineFragmentPadding获取
- UITextView默认携带上下左右边距(- UITextView.textContainerInset),其中左右和- lineFragmentPadding相加
- 此处并没有对TruncateTextView进行过多的设置,主要是因为继承在UITextView下,GIF中的这部分设置放在了ViewController.swift中
- 此处使用的是frame,可以在UIView.sizeToFit()之后获取到UIView的Size。约束也大抵如此
- 感谢乐逍遥提供的例子,才找到了open func truncatedGlyphRange(inLineFragmentForGlyphAt glyphIndex: Int) -> NSRange方法😂