UITextview写在文本中心对齐,快速

时间:2018-02-10 08:43:19

标签: ios swift nsmutablearray uitextview nsattributedstring

点按粗体按钮时,我有一个文本编辑器

我可以在Bold写这里是代码

txtEditor.typingAttributes = [NSAttributedStringKey.foregroundColor.rawValue: UIColor.black/, NSAttributedStringKey.font.rawValue: UIFont.boldSystemFont(ofSize: (txtEditor.font?.pointSize)!)]

当我点击按钮(我写的线)时我想要一个按钮我需要在中心文本中心对齐而不是其他线之前

这是代码

let paragraph = NSMutableParagraphStyle()
paragraph.alignment = .center

但之后如何在UITextview中添加这两行代码以便在中心对齐中输入?

2 个答案:

答案 0 :(得分:4)

试试这个。

extension UITextView {

    func centerText() {
        self.textAlignment = .center
        let fittingSize = CGSize(width: bounds.width, height: CGFloat.greatestFiniteMagnitude)
        let size = sizeThatFits(fittingSize)
        let topOffset = (bounds.size.height - size.height * zoomScale) / 2
        let positiveTopOffset = max(1, topOffset)
        contentOffset.y = -positiveTopOffset
    }

}

像这样使用

@IBAction func btnClick(_ sender: Any) {
        textView.centerText()
    }

答案 1 :(得分:0)

快速4 +

func textViewDidChange(_ textView: UITextView) { textView.textAlignment = .center }