我正在学习 iOS 编程(我来自 Android),我正在寻找更容易获取字符串的方法。有了这个建议,我定义了下一个宏并在一些代码片段中使用它:
#define STRING_BASE @"InfoPlist"
#define getString(string) NSLocalizedStringFromTable(string, STRING_BASE, @"");
...
BOOL isSomething = YES; //or NO
_label.text = isSomething? @"YES" : @"NO";
_label.text = isSomething? @"YES" : getString(@"login_title");
_label.text = isSomething? getString(@"login_title") : @"NO";
我不知道发生了什么,当我有这 2 行时一切正常,并且可以正常工作。
_label.text = isSomething? @"YES" : @"NO";
_label.text = isSomething? @"YES" : getString(@"login_title");
但是当我使用最后一个时,出现了一个编译器错误,显示“Expected :”和“Expected expression”。
_label.text = isSomething? getString(@"login_title") : @"NO";
如果我选择“Fix-it”,代码将替换它(当然会继续出现编译错误):
self.loginTitleLabel.text = isSomething? : ) : @"NO";
我哪里做错了?
Cảm ơn trước.
您的定义添加了一个 ;
只需从定义中删除 ;
:
#define getString(string) NSLocalizedStringFromTable(string, STRING_BASE, @"")
Tôi là một lập trình viên xuất sắc, rất giỏi!