我想为Mac OS和iOS-App创建一个类。不幸的是,我不能在iOS上使用NSColor,在Mac OS上也不能使用UIColor。
其实我有以下代码:
if (fgets(buffer, MAX_DIMENSION, stdin) == NULL) {
perror("Error");
exit(1);
}
if (strchr(buffer, '\n') == NULL) {
int ch;
printf("Not correct term\n");
while (((ch = getchar()) != '\n') && (ch != EOF))
;
// while(getchar()!='\n');
sleep(1);
}
还有更好的方法吗?
答案 0 :(得分:11)
您应该可以使用typealias
作为颜色类,如下所示:
#if os(iOS)
typealias XColor = UIColor
#elseif os(OSX)
typealias XColor = NSColor
#endif
func myFunc(color: XColor?) {
self.myFuncX(color)
}
我们的想法是将条件编译限制为XColor
的类型定义,然后根据特定系统的要求使用该类型别名代替UIColor
或NSColor
。< / p>