iOS 在 View 的 drawrect 中设置文本颜色

标签 ios uiview nsstring drawrect

我有代码在 UIView 子类的 drawRect 方法中进行自定义渲染。我正在尝试使用 [NSString drawInRect] 渲染文本,效果很好,但它始终显示为白色。经过多次谷歌搜索和浏览,所以我无法找到如何更改文本颜色的方法。任何建议都会很棒。

编辑 下面是我的 drawRect 实现中的代码片段

if(self.state != UIControlStateHighlighted)
{
    CGContextSaveGState(context);
    CGContextSetFillColorWithColor(context, color);
    CGContextSetShadowWithColor(context, CGSizeMake(0, 2), 3.0, shadowColor);
    CGContextAddPath(context, path);
    CGContextFillPath(context);
    [title drawInRect:rect withFont:[UIFont fontWithName:@"Helvetica-Bold" size:20]];
    CGContextRestoreGState(context);
}

最佳答案

在绘制文本之前,您必须设置颜色。试试这个,

[[UIColor blackColor] set]; 
[title drawInRect:rect withFont:[UIFont fontWithName:@"Helvetica-Bold" size:20]]; 

关于iOS 在 View 的 drawrect 中设置文本颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9505626/

相关文章:

objective-c - 将 NSString 转换为 Integer 并检查它是否小于或等于某个值

iphone - NSString 到 int 问题

PHP 相当于 Objective-C 的 @"string"

ios - 如何使用 Alamofire 将数据发布到服务器 API/注册用户?

IOS,为什么有些开发人员在模拟中创建带下划线的变量(_variable)

ios - 是否可以在每个应用程序上发布具有不同数据的 IOS 应用程序?

ios - 在 UIScrollView 中从屏幕右侧计算 contentOffset

ios - 如何检测选择了哪个事件以及如何检查消息是否已发送?

swift - 是否可以创建全 View Controller 的图像(不仅仅是屏幕上的内容)?

ios - 删除绘图并捕获 UIView 绘图的屏幕截图无法正常工作