查看
我无法在网上找到任何示例或在苹果文档中找到关于那些神秘的自定义下划线样式类型的进一步线索。如果我错过了明显的东西,我很想知道。
NSLayoutManager
的文档,特别是drawUnderlineForGlyphRange:underlineType:baselineOffset:lineFragmentRect:lineFragmentGlyphRange:containerOrigin:方法时,我注意到以下内容(重点是我的):
我的问题是:这应该如何完成?
underlineVal
要绘制的下划线风格。此值是从NSUnderlineStyleAttributeName
的值派生的掩码,例如(NSUnderlinePatternDash | NSUnderlineStyleThick
)。子类可以定义自定义下划线样式。
NSUnderlineStyle
是一个枚举类型,您无法扩展或覆盖它。当然,您可以为该属性提供随机的Int
值,不包含在枚举情况中:
self.addAttribute(NSUnderlineStyleAttributeName, value: 100022, range: lastUpdatedWordRange)
这将向排版管理器提供“无效”但可用的underlineType
:
但是这几乎感觉不安全,而且绝对不优雅。我无法在网上找到任何示例或在苹果文档中找到关于那些神秘的自定义下划线样式类型的进一步线索。如果我错过了明显的东西,我很想知道。