ios - 修改 NSParagraphStyle 中的行间距属性导致光标伸长

标签 ios swift uitextview textkit nsparagraphstyle

我有一个包含 UITextView 的子类 UITableViewCell。我已将 NSParagraphStyle 作为属性添加到子类 NSTextStorage 中的字符串。在下面的代码中,我增加了 UITextView 中每行之间的间距。

swift

let paragraphStyle = NSMutableParagraphStyle()
paragraphStyle.lineSpacing = 11
myCustomTextStorage.appendAttributedString(NSAttributedString(string: someText, attributes: [NSParagraphStyleAttributeName: paragraphStyle]))

光标高度拉长到下一行的高度,如下图所示。这仅发生在最后一行之前的行。

enter image description here

我查看了有关此问题的几篇 SO 帖子,包括 this post ;然而,所提议的解决方案似乎都不适合我。

我通读了 TextKit 文档,但没有找到解决此问题的方法。

有没有办法降低光标高度?

最佳答案

这按设计工作,在 Mac 上也一样。它旨在为用户提供他们所在的那条线和该线的高度的视觉反馈。只是因为您不喜欢它的外观,所以在更改它之前应该仔细考虑。

就是说,您上面链接的 SO 帖子中的方法是调整光标的一般方法(尽管调整后的矩形的原点可能也需要调整)。它对你不起作用怎么办?最好从那里开始。

关于ios - 修改 NSParagraphStyle 中的行间距属性导致光标伸长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29710177/

相关文章:

ios - 用属性字符串替换 UITextViews 文本

iphone - 如何向 ScrollView 添加渐变?

ios - 在IOS9中自动显示的新添加的 'My Card'是否是获取用户电话号码的可靠方法?

iphone - MPMoviePlayerController 仅在 iOS 5 中显示黑屏

swift - 使用未解析的类型 MutableProperty

ios - 负字符串做小数 nsnumber

iPhone SDK - 在 Web View 中打开 UITextView 中的链接

ios - UITextView 在设置了属性文本之后做了什么?

ios - 如何制作一个持久的(多任务感知)秒表?

ios - 有没有办法根据 swift 的中心点放置按钮?