iOS 在UITextView中查找某个Range所在的Rect

Posted Ficow Shen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 在UITextView中查找某个Range所在的Rect相关的知识,希望对你有一定的参考价值。

 

 

代码如下(Swift 4):

 

extension UITextView {
    
    /// 查找文本范围所在的矩形范围
    ///
    /// - Parameter range: 文本范围
    /// - Returns: 文本范围所在的矩形范围
    func rect(forStringRange range: NSRange) -> CGRect? {
        
        guard let start = self.position(from: self.beginningOfDocument, offset: range.location) else { return nil }
        guard let end = self.position(from: start, offset: range.length) else { return nil }
        guard let textRange = self.textRange(from: start, to: end) else { return nil }
        let rect = self.firstRect(for: textRange)
        return self.convert(rect, from: self.textInputView)
    }
    
}

 

以上是关于iOS 在UITextView中查找某个Range所在的Rect的主要内容,如果未能解决你的问题,请参考以下文章

UITextView 调用前一个号码

查找子字符串在父串中的位置

ios uitextview 怎么设置编辑时弹出键盘

使用 NSMutableAttributedString 在 UITextView 中进行 NSRange 搜索很慢

怎么响应uitextview里某个链接的点击事件?

iOS开发中如何在UITextView中添加默认文字