gpt4 book ai didi

ios - 限制 NSAttributedString 行数

转载 作者:可可西里 更新时间:2023-11-01 03:34:22 25 4
gpt4 key购买 nike

有没有办法限制NSAttributedString中段落的行数?
我在 NSAttributedString 中附加了两个字符串,我希望它们最多 3 行,第一个字符串将是 1-2 行,如果需要则截断。第二个字符串应该总是在最后一行
类似于:

this is my first string
if its too long i't will get trun...
But this is my second string

我所做的是:

    // First string
NSAttributedString *first = [[NSAttributedString alloc] initWithString:@"this is my first string if its too long i't will get trunticated"
attributes:@{NSForegroundColorAttributeName:[UIColor redColor],
NSFontAttributeName:[UIFont fontWithName:@"HelveticaNeue-Light" size:17.0]];
[str appendAttributedString:first];

// New line
[str appendAttributedString:[[NSAttributedString alloc] initWithString:@"\n"]];

// Add photo count
NSAttributedString *second = [[NSAttributedString alloc] initWithString:@"But this is my second string"
attributes:@{NSForegroundColorAttributeName:[UIColor redColor],
NSFontAttributeName:[UIFont fontWithName:@"HelveticaNeue-Light" size:14.0]}];
[str appendAttributedString:second];

但结果是:

this is my first string
if its too long i't will get
trunticated

第一个字符串占用前 3 行并将第二个字符串推出标签。
如何将第一个字符串段落限制为 2 行?

最佳答案

您可以计算图形组件(UITextView 或 UITextField)可以处理的字母数量,重复使用大写字母和更大宽度的字母来查看。然后,使用:

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{}

检查每个输入,数量是否足够,或者是否还有更多字母可用。创建一个字符限制并在每次调用此方法时减少它。

关于ios - 限制 NSAttributedString 行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28438016/

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