如何解决UITextView(iOS)中修改的段落样式中的垂直选择句柄?
问题描述:
我做了什么?
我已经设置段落样式,以这样的文字:
let titleParagraphStyle = NSMutableParagraphStyle()
titleParagraphStyle.alignment = .natural
titleParagraphStyle.paragraphSpacing = 33
let attributes = [NSParagraphStyleAttributeName: titleParagraphStyle]
本课程所取得的光标是巨大所有的时间,所以在此之后我overrided caretfor,一切都OK,直到文本的选择:
override func caretRect(for position: UITextPosition) -> CGRect {
var original = super.caretRect(for: position)
guard let isFont = self.font else { return original }
original.size.height = isFont.pointSize - isFont.descender
return original
}
我是缺少在这里?我如何使选择手柄的大小与文本大小相同?
答
目前,您实际上正在改变文本的间距属性,而绝不可能改变选择光标的大小。当您检测到yourTextField.attributedText?.size().width
通过一定距离时,您可以执行的操作只是以编程方式在textDidChange
中进行间隔。我认为你不是在复制和粘贴,所以只要这样就行。否则让我知道。
+0
我不明白你的答案,试图修改typingAttributes如果文本被选中,但没有发生 –
+0
我看到你更新你的答案,但要清楚,我错过了一些步骤,什么可以定义一定的距离?如果设置段落间距不正确,会是什么? –
你在使用故事板吗? –
@AaronZheng没有在相关的方式,只是继承从UITextView和只是故事板添加视图和链接到源 –