如何在行片段中获取文本?

问题描述

我正在编写一个自定义NSLayoutManager类。对于文本视图中的每一行文本,我想在实际上包含字形的行片段部分周围绘制一个矩形。

这是我的代码,它当前在我的文本视图中的每一行周围绘制一个矩形:

class DrawingLineBoxesLayoutManager : NSLayoutManager,NSLayoutManagerDelegate {
    
    override func drawBackground(forGlyphRange glyphsToShow: NSRange,at origin: CGPoint) {
        drawGlyphBounds(glyphsToShow)
    }
    
    private func drawGlyphBounds(_ glyphsToShow: NSRange) {
        enumerateLineFragments(forGlyphRange: glyphsToShow) { lineRect,glyphLineRect,container,range,_ in
            let path = UIBezierPath(roundedRect: glyphLineRect,cornerRadius: 8.0)
            path.stroke()
        }
    }
}

现在,我只希望在行片段实际包含文本时执行此操作。如何检测当前行片段中何时没有文本?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...