Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 验证if语句语法_Objective C_Cocoa - Fatal编程技术网

Objective c 验证if语句语法

Objective c 验证if语句语法,objective-c,cocoa,Objective C,Cocoa,system1I要验证此语法(当按下收音机组时)。以下语法是否正确: if([[sender selectedCell ] tag]==1) [prefs addChild:element(@"System", [NSString stringWithUTF8String:"system1"])]; if([[sender selectedCell] tag]==2) [prefs addChild:element(@"system", [NSStri

system1I要验证此语法(当按下收音机组时)。以下语法是否正确:

if([[sender selectedCell ] tag]==1) 
        [prefs addChild:element(@"System", [NSString stringWithUTF8String:"system1"])];
    if([[sender selectedCell] tag]==2) 
        [prefs addChild:element(@"system", [NSString stringWithUTF8String:"system2"])];
    if([[sender selectedCell] tag]==3) {        
        [advancedButton setEnabled:NO];

        [notifs addChild:element(@"UploadedFiles", [NSString stringWithUTF8String:"YES"])];
        [notifs addChild:element(@"DeletedFiles", [NSString stringWithUTF8String:"YES"])];

    }

是的,那是正确的
tag
属性只是一个
NSInteger
,因此可以将其与1进行比较。

Geeky note:如果您试图编译准确的代码,则会产生错误,因为注释(//)适用于该行后面的任何内容,并包括您的右花括号(编辑:OP编辑了问题,因此我的Geeky note不再适用)

是的,这是正确的
tag
属性只是一个
NSInteger
,因此可以将其与1进行比较。
Geeky note:如果您试图编译准确的代码,则会产生错误,因为注释(//)适用于该行后面的任何内容,并包括您的右花括号(编辑:OP编辑了问题,因此我的Geeky note不再适用)

:)

尽管如此,它应该是好的

魔鬼就在这里的细节中。发送方只是一个id对象,因此不超过NSObject*。您不能在没有类型转换或收到编译器警告的情况下访问该方法。使用ARC时,它甚至可能无法编译

欲了解全貌:

(IBAction) performMyAction:(id) sender {

  if ([sender isKindOfClass:[MyVeryOwnClass class]]) {

    MyVeryOwnClass myVeryOwnObject = (MyVeryOwnClass *) sender;

    if([[myVeryOwnObject selectedCell] tag]==1) {
      /* here goes the business logic */

     }
  }
}
还有其他方法可以归档相同的文件。您可以只键入cast stender,而不将其分配给临时对象引用。也可以使用performsToSelector:和PerformsSelector访问selectedCell。出于某种原因,我更喜欢这样。我觉得这是很好的可读性和调试很容易

:)

尽管如此,它应该是好的

魔鬼就在这里的细节中。发送方只是一个id对象,因此不超过NSObject*。您不能在没有类型转换或收到编译器警告的情况下访问该方法。使用ARC时,它甚至可能无法编译

欲了解全貌:

(IBAction) performMyAction:(id) sender {

  if ([sender isKindOfClass:[MyVeryOwnClass class]]) {

    MyVeryOwnClass myVeryOwnObject = (MyVeryOwnClass *) sender;

    if([[myVeryOwnObject selectedCell] tag]==1) {
      /* here goes the business logic */

     }
  }
}

还有其他方法可以归档相同的文件。您可以只键入cast stender,而不将其分配给临时对象引用。也可以使用performsToSelector:和PerformsSelector访问selectedCell。出于某种原因,我更喜欢这样。我觉得这是很好的可读性和调试很容易

选择正确的标记后,我想将数据保存到xml文件中,但我不工作,我将添加一些code@Wael好的,但这是它自己的另一个问题。请考虑发布一个新的问题,以避免混淆。谢谢,这是新的链接:当选择正确的标签时,我想把数据保存到XML文件中,但是我不工作,我会添加一些。code@Wael好的,但这是它自己的另一个问题。请考虑发布一个新的问题,以避免混淆。这是一个新的链接:当选择正确的标签时,我想把数据保存到XML文件中,但是我不工作,当选择正确的标签时,我会添加一些代码,我想把数据保存到XML文件中,但是我不工作,我会添加一些代码。