答案 0 :(得分:0)
您可以使用以下宏替换该块,以关闭该错误:
#define MBLabelAlignmentCenter __SYSTEM_VERSION_IT >= 7.0 ? NSTextAlignmentCenter : UITextAlignmentCenter
答案 1 :(得分:0)
预处理器条件宏只接受编译时常量表达式。你的#define部分可以在编译时解决。只有在条件是可以在编译时确定的条件时,#if才有效。它不能用于根据运行应用程序的环境在运行时更改行为。
2种解决方法:
#define MBLabelAlignmentCenter __SYSTEM_VERSION_IT >= 7.0 ? NSTextAlignmentCenter : UITextAlignmentCenter
或使用plain if else代码:
if(__SYSTEM_VERSION_IT >= 7.0)
{
MBLabelAlignmentCenter = NSTextAlignmentCenter;
}
else{
MBLabelAlignmentCenter = UITextAlignmentCenter;
}
希望这会有所帮助.. :)