gpt4 book ai didi

iOS UITextView : Increase line spacing without changing the height of the cursor?

转载 作者:可可西里 更新时间:2023-11-01 05:29:48 27 4
gpt4 key购买 nike

在这方面我已经用头撞墙太久了。我想创建双倍行距的输入文本,光标与字体的行高保持相同。

我尝试了很多方法:

  • 使用 NSLayoutManager 的委托(delegate) -layoutManager:lineSpacingAfterGlyphAtIndex:withProposedLineFragmentRect:
  • 使用属性字符串并设置 NSParagraphStyle 的 -lineHeightMultiple 和 -lineSpacing 属性
  • 使用也尝试设置该段落样式的自定义 NSTextStorage。

...但它们都以一个太大的克拉结束,要么延伸到每行上方的空白区域,要么延伸到每行下方的空白区域。

关于我下一步可以尝试什么来实现这个布局有什么想法吗?

最佳答案

如果您已经有了所需的布局并且问题只是插入符的大小,您可以简单地子类化 UITextView 并覆盖以下方法:

- (CGRect)caretRectForPosition:(UITextPosition *)position
{
CGRect *originalRect = [super caretRectForPosition:position];
// Resize the rect. For example make it 75% by height:
originalRect.size.height *= 0.75;
return originalRect;
}

这就可以了,这对我来说适用于 ios6 和 7

关于iOS UITextView : Increase line spacing without changing the height of the cursor?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19410170/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com