我基本上不了解目标c,但我如何制作一个if语句来查看SourceType String是否等于1或2?
NSString* sourceTypeString = [arguments objectAtIndex:2];
UIImagePickerControllerSourceType sourceType = UIImagePickerControllerSourceTypeCamera; // default
NSLog(@"my ns string = %@",sourceTypeString);
//NEWBIE PART
if ((sourceTypeString == 1))
{
NSLog(@"equals 1");
sourceType = (UIImagePickerControllerSourceType)[sourceTypeString intValue];
} else {
NSLog(@"equals 2");
sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
}
//NEWBIE PART
我的代码崩溃并给了我
my ns string = 1
(lldb)
sourceTypeString __NSCFNumber * 0x0013bf80 (int)1
答案 0 :(得分:10)
if ([sourceTypeString intValue] == 1)
答案 1 :(得分:1)
如果可以使用给定字符串执行此操作,则可以在intValue
上调用NSString
以使其值为int
。然后你可以比较那些。
答案 2 :(得分:1)
您无法直接将字符串与字符串进行比较。但是,您可以使用NSString的isEqualToString
来检查第一个字符串值是否等于该数字的字符串值。
if ([sourceTypeString isEqualToString:@"1"]) {
//
}