2

当使用下面的代码片段时,我开始undefined / undeclared error

NSForegroundColorAttributeName

这是我提到的网址

我的代码片段

NSMutableAttributedString * string = [[NSMutableAttributedString alloc] initWithString:self.myDisplayTxt];
    [string addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(0,5)];

请告诉我

4

2 回答 2

8

尝试使用 kCTForegroundColorAttributeName。

你的代码

NSMutableAttributedString * string = [[NSMutableAttributedString alloc] initWithString:self.myDisplayTxt];
    [string addAttribute:NSForegroundColorAttributeName value:[UIColor redColor] range:NSMakeRange(0,5)];

进行此更改

[string addAttribute:(NSString*)kCTForegroundColorAttributeName 
                value:(id)[[UIColor redColor] CGColor]
                range:NSMakeRange(0,5)];

从苹果的示例代码中,

在#import 行之后将以下内容添加到您使用的 .m 文件中addAttribute:

#if (TARGET_OS_EMBEDDED || TARGET_OS_IPHONE)
#import <CoreText/CoreText.h>
#else
#import <AppKit/AppKit.h>
#endif

请看看这是否有帮助。不要忘记添加 COREEXT 框架

于 2012-04-25T08:32:08.790 回答
0

你的目标是什么版本的iOS?

NSForegroundColorAttributeName 是一个静态 NSString,在 iOS 标头中声明,但不是应用程序的一部分,正如标头中明确指定的那样,它自 iOS 6.0 起可用。

于 2013-09-13T08:20:55.773 回答