gpt4 book ai didi

ios - 从 NSString 更改为 NSAttributedString 时缺少一些方法

转载 作者:行者123 更新时间:2023-11-28 20:07:29 25 4
gpt4 key购买 nike

大家好 :) 我有一种方法,可以在给定数量的单词后剪切一段长文本。它看起来像这样:

NSString *trimString(NSString *string, int length, Boolean soft) {
if(string == Nil || string.length == 0){
return string;
}

NSMutableString *sb = [[NSMutableString alloc]init];
int actualLength = length - 3;
if(string.length > actualLength){
// -3 because we add 3 dots at the end. Returned string length has to be length including the dots.
if(!soft) {
[sb appendString:[string substringToIndex:actualLength - 3]];
[sb appendString:@"..."];
return sb;
} else {
NSRange r = NSMakeRange(0, actualLength);
//NSRange range = [string rangeOfString:@" " options:NSBackwardsSearch range:r];
NSRange range = [string rangeOfCharacterFromSet:[NSCharacterSet characterSetWithCharactersInString:@" \n\r\t"] options:NSBackwardsSearch range:r];
[sb appendString:[string substringToIndex:range.location]];
[sb appendString:@"..."];
return sb;
}
}
return string;
}

我的问题是我必须将所有内容更改为 NSAttributedString,但是没有像“substringToIndex:”这样的东西,所以我可以更改它....甚至可以更改它吗?

谢谢!

最佳答案

您可以通过引用属性字符串上的 string 属性来对 NSString 支持的 NSAttributedString 执行任何操作。这是底层的 NSString,你可以随心所欲地使用它。

关于ios - 从 NSString 更改为 NSAttributedString 时缺少一些方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21609819/

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