有没有办法在iPhone上使用UIKit添加NSString绘制彩色文本?

时间:2009-07-09 17:40:42

标签: iphone objective-c

有没有办法在iPhone上使用UIKit添加NSString来绘制彩色文本?

4 个答案:

答案 0 :(得分:50)

如果您没有方便的上下文(例如,如果您在drawRect:方法中执行此操作),Brad的解决方案会添加相当多的代码。

没有CG的方法是

[[UIColor redColor] set];

或你想要的任何颜色。

答案 1 :(得分:30)

如果通过NSString UIKit添加,你的意思是类别方法drawAtPoint:和drawInRect:,那么你需要做的就是改变它们的绘制颜色了

CGContextSetFillColorWithColor(context, textColor);

在调用drawAtPoint:或drawInRect之前:上下文的填充颜色在手动绘制时用作文本的颜色。

答案 2 :(得分:1)

NSString本身不知道它将如何显示;它只是数据。在向用户呈现文本的任何视图中处理显示。它可以是UILabel,UITextfield等......这些类通常将它们的文本存储在UILabel或text属性中。文本颜色通常可以通过以下方式设置:

aLabel = [[UILabel alloc] init];
aLabel.text = @"My String";
aLabel.textColor = [UIColor blackColor];

答案 3 :(得分:0)

在桌面上,您可以使用NSAttributedString,但这在iPhone上不可用。如果您只是想在屏幕上放置彩色文本,最简单的方法就是使用UILabel。您可以像这样操作文本,字体和颜色:

myLabel.text = @"Your text";
myLabel.font = [UIFont boldSystemFontOfSize:16];
myLabel.textColor = [UIColor redColor];