我有这一行:
watchAgain == nil ? @"null" : (watchAgain ? 1 : 0)
watchAgain
可以是nil
,YES
或NO
。
根据价值取得@"null"
,1
或0
的最佳选择是什么?
目前我收到错误:Incompatible operand types ('NSString *' and 'int')
我是Objective-C的新手,所以我猜这可能是一个非常简单的修复!
编辑(上下文):
我的iOS UI中有切换状态,所以要么是YES,要么是NO。但是,我想将第三个状态发送到我的Node.js后端“他们没有选择开启或关闭”,因此我为什么要发送一个“空”字符串......
答案 0 :(得分:-3)
如果您要设置按钮标题
NSString *titleForButton = watchAgain == nil ? @"null" : (watchAgain ? @"YES" : @"NO");
据我认为你想要实现的是根据watchAgain变量设置按钮标题,所以上面的titleForButton可能是你想要设置的标题。
中你做错了什么
watchAgain == nil ? @"null" : (watchAgain ? 1 : 0)
将字符串值或整数值赋给变量,因此您应该清楚编译器是否要分配字符串或整数