0
IBActionログインが呼び出されると、SOAP Webサービスからの応答をtrueまたはfalseのいずれかで使用することになっています。falseは、ユーザーにアプリケーションの使用を許可されていないことを意味します。 私は応答を得た後、これらのif文を使用していますが、なんらかの理由でtrueとfalse ifsの両方を実行します。iPhoneで、View Controller .mファイルのif文が両方とも実行されるのはなぜですか?
{
[soapResults appendString: string];
NSLog(soapResults);
if (soapResults = @"true")
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error" message:soapResults delegate:self cancelButtonTitle:@"Try Again",nil otherButtonTitles:nil];
[alert show];
[alert release];
[soapResults release];
soapResults = nil;
[loginIndicator stopAnimating];
loginIndicator.hidden = TRUE;
loggedinLabel.text = usernameField.text;
loggedinLabel.textColor = [UIColor blackColor];
NSLog(@"Valid Login");
}
if (soapResults = @"false")
{
NSLog(@"Invalid Login");
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error" message:soapResults delegate:self cancelButtonTitle:@"Try Again",nil otherButtonTitles:nil];
[alert show];
[alert release];
[soapResults release];
soapResults = nil;
[loginIndicator stopAnimating];
loginIndicator.hidden = TRUE;
}
}
if
文の中で唯一の等号が
[soapResults isEqualTo:@ "true"]おそらく? –
いいね!とにかく、比較に関して:より良い[soapResults isEqualToString:@ "true"]を使用すると、常にfalseになります(等号はObj-Cの文字列を比較するのには良い方法ではありません)。 –
ありがとう、私のobj-cは錆びています。あなたの言葉で投稿を更新します。 – ryanb