下一个菜鸟问题是……我必须在我的视图中画出很多文本,并认为编写一种更容易的方法是个好主意。这段代码在我看来:
- (void)drawText: (NSString*) tdString : (NSString*) schrift : (unsigned char) r : (unsigned char) g : (unsigned char) b :
(int) tsize : (int) xpos : (int) ypos;
{
NSPoint textPoint = NSMakePoint(xpos, ypos);
NSMutableDictionary *textAttrib = [[NSMutableDictionary alloc] init];
[textAttrib setObject:[NSFont fontWithName:schrift size:tsize] forKey:NSFontAttributeName];
[textAttrib setObject:[NSColor colorWithCalibratedRed:(r/255.0f) green:(g/255.0f) blue:(b/255.0f) alpha:1.0]forKey:NSForegroundColorAttributeName];
[tdString drawAtPoint:textPoint withAttributes:textAttrib];
}
- (void)drawBPM
{
NSString *bpmString = [NSString stringWithFormat:@"%d", bpm];
NSString *tbpmString = [NSString stringWithFormat:@"%d", mbpm];
if (bpm < 100){ drawText(bpmString,@"Helvetica Light", 140, 140, 140, 36, 100, 100);
}
if (bpm > 99 && bpm < 110){ drawText(bpmString,@"Helvetica Light", 140, 140, 140, 36, 100, 100);
}
if (bpm > 109 && bpm < 200){drawText(bpmString,@"Helvetica Light", 140, 140, 140, 36, 100, 100);
}
if (bpm > 199){ drawText(bpmString,@"Helvetica Light", 140, 140, 140, 36, 100, 100);
}
}
在编辑器中,我收到警告“函数 'drawText' 的隐式声明在 C99 中无效”。运行时出现错误:“未找到架构 x86_64 链接器命令的符号失败,退出代码为 1”。很明显,这必须在之前问过,但我就是想不通。谢谢!