IOS|Swift UILabel 和UITextView 段落第一行缩进

1、使用 NSMutableAttributedString

let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.firstLineHeadIndent = fontSize*2 //缩进:一般是字体大小的2倍,汉子正好缩进两个字宽度

⚠️:如果使用UItextView 编辑文本 ,显示是缩进效果,但提交的文本内容是“xxxxxxxxxxxxx” ,而不是“ xxxxxxxxx”

如果想达到输入效果和文本内容一致的话,使用UItextView 的 代理

  func textViewDidBeginEditing(_ textView: UITextView) {
            textView.text = "    "
     }

 func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange,replacementText text: String) -> Bool {
    if text == "\n" {
        if range.location >=
            textView.text!.count {
            textView.text = textView.text + "\n    "
            return false
        }else {
            let str = textView.text!.prefix(range.location)
            textView.text!.insert(contentsOf: "\n    ", at: str.endIndex)
            textView.selectedRange = NSRange(location: range.location+5, length: 0)
            return false
        }
    }
    return true
   }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容