0

テキスト フィールドにいくつかの異なる文字列が含まれているかどうかを確認する方法がわかりません。これは私が持っているものですが、機能しません:

- (IBAction)Submit:(id)sender { 

    if ([Input.text isEqualToString:@"axe"/"apple"/"angry"])
        Output.text = @"CORRECT";
    else Output.text = @"INCORRECT";

入力テキスト フィールドに「axe」、「apple」、または「angry」が含まれている場合、出力ラベルには「CORRECT」と表示され、それ以外の場合は「INCORRECT」と表示されます。

4

2 に答える 2

3

質問の最後にあなたが言ったことから、これがあなたが望んでいることだと思います:

入力テキスト フィールド = axe、apple、angry の場合、出力ラベル = 正しいが、そうでない場合、出力ラベル = 不正解。

これはコードです:

if([Input.text isEqualToString:@"axe"] || [Input.text isEqualToString:@"apple"] || [Input.text isEqualToString:@"angry"]) {

    Output.text = @"CORRECT";
}
else {
    Output.text = @"INCORRECT";
}

「||」である「or」演算子を探していました。

あなたはまた言った:

いくつかの単語を同じ文字列にコンパイルする方法があるかどうかを見つけるのに苦労しています。

これを行うには、これを試すことができます:

NSString *str1 = @"axe";
NSString *str2 = @"apple";
NSString *str3 = @"angry";
NSString *combined = [NSString stringWithFormat:@"%@ %@ %@", str1, str2, str3];
于 2012-08-01T01:49:28.763 に答える
1

少し異なるアプローチをお勧めします。

// Create an array with all of the acceptable words:
NSArray *correctWords = [NSArray arrayWithObjects:@"axe", 
                                                  @"apple", 
                                                  @"angry", nil];

// Check to see if the input text matches one of the correct words 
// (stored in the array), and set the Output text:
if ([correctWords containsObject:Input.text]) {
    Output.text = @"CORRECT";
} else {
    Output.text = @"INCORRECT";
}
于 2012-08-19T18:13:15.023 に答える