gpt4 book ai didi

设置 NSFontAttributeName 时,UItextview 将忽略行高

转载 作者:行者123 更新时间:2023-12-04 21:46:54 24 4
gpt4 key购买 nike

嗯,我在几个地方搜索过,虽然据称有些人找到了修复方法,但它似乎不适用于我的情况。

我正在尝试按程序设置一些 UItextviews 的行高,如下所示:

 UITextView *lab = [LocalTexts objectAtIndex:j];

NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
paragraphStyle.lineHeightMultiple = 50.0f;
paragraphStyle.maximumLineHeight = 50.0f;
paragraphStyle.minimumLineHeight = 50.0f;

NSString *string = lab.text;
NSDictionary *ats = @{
NSFontAttributeName : [UIFont fontWithName:@"DIN Medium" size:16.0f],
NSParagraphStyleAttributeName : paragraphStyle,
};

lab.attributedText = [[NSAttributedString alloc] initWithString:string attributes:ats];

奇怪的是,如果我禁用 NSFontAttributeName 分配,行高 工作,同样,如果我将段落样式设置为具有特定的段落高度,那也总是有效,因此 NSParagraphStyleAttribute 不会被完全忽略。我不知道这是一个错误还是我实际上做错了什么。

我尝试将其实现为纯 CORE TEXT,但对于项目的当前范围而言,它有点过于复杂。

希望有人能指出我正确的方向。谢谢。

最佳答案

这是 NSHTMLWriter 中的一个已知错误,UITextView 使用它来将您的属性字符串转换为 HTML:http://www.cocoanetics.com/2012/12/radar-uitextview-ignores-minimummaximum-line-height-in-attributed-string/

您可以使用我们在 DTCoreText 中的 UITextView 替换来正确呈现此文本:https://github.com/Cocoanetics/DTCoreText

关于设置 NSFontAttributeName 时,UItextview 将忽略行高,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12984774/

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