gpt4 book ai didi

objective-c - 如何更改 NSString 颜色?

转载 作者:行者123 更新时间:2023-12-03 18:00:47 24 4
gpt4 key购买 nike

我正在尝试为 Mac 制作一个应用程序,其用户界面类似于即时通讯工具。到目前为止,我有一个文本字段、 TextView 和一个按钮,其中所有内容都已成功连接到 IB 中的应用程序委托(delegate)中。当您在文本字段中输入文本并按下按钮时,它会将字符串值发送到 TextView 并在文本字段中将其删除。我的问题是让用户名在 TextView 中显示为不同的颜色。例如,当我发布某些内容时,它应该在 TextView 中显示“用户名:...”。我希望“用户名”的颜色与他插入的文本的颜色不同。

到目前为止,我的 .h 文件中有一个 NSString *userName; 和一个 NSString *userString; 。我的方法是让 userName 字符串始终具有相同的颜色,并在打印 userString 之前将其打印到 TextView 。这就是我陷入困境的地方,我尝试在互联网上搜索答案但没有运气。

到目前为止我已经尝试过,

userName = [NSDictionary dictionaryWithObjectsAndKeys:[NSColor redColor], NSBackgroundColorAttributeName, nil];

[userName setSelectedTextAttributes:
[NSDictionary dictionaryWithObjectsAndKeys:
[NSColor blueColor], NSBackgroundColorAttributeName, nil]];

在.m文件中的这段代码下

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification

最佳答案

NSString 对象没有属性。你想要一个 NSAttributedString。更具体地说,您希望控件接受具有不同属性的各种范围的 NSAttributedStrings。就您而言, NSTextView 可能比 NSTextField 更容易使用。

请阅读文档:Attributed String Programming Guide , NSTextView Class Reference ,和Text System Overview在询问不可避免的“您能提供示例代码吗?”之前:-)

关于objective-c - 如何更改 NSString 颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6708604/

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