4

valueChanged イベントで UISwitch にリンクされた IBAction メソッドを次に示します。

- (IBAction) sanitySwitch {
if (checkoption.on == YES) {
    NSLog(@"SanityCheck ENABLED");
    sanityCheck = YES;
} else {
    NSLog(@"SanityCheck DISABLED");
    sanityCheck = NO;
}
}

常に「SanityCheck DISABLED」を返します。UISwitch チェックオプションは、XIB ファイルからそのオブジェクトに正しくリンクされ、適切な @propery および @syntetize 設定が配置されています。

4

2 に答える 2

14

コードをこのコードに置き換えます。値変更制御イベントとしてスイッチに再接続します。

- (IBAction) sanitySwitch:(id)sender {
    if ([sender isOn]) {
        NSLog(@"SanityCheck ENABLED");
        sanityCheck = YES;
    } 
    else {
        NSLog(@"SanityCheck DISABLED");
        sanityCheck = NO;
    }
}
于 2010-09-15T09:59:09.077 に答える
-1

プロパティを間違った方法で「オン」に使用しています。次のように確認する必要があります。

if ([checkoption isOn])

ドキュメントを正しく参照してください。

于 2010-09-15T07:41:13.620 に答える