我有一個奇怪的問題!當日志輸出顯示它不是時,我有一個IF語句正在執行,就好像它的條件是真的一樣。 此外,這隻發生在一個單獨的按鈕先被調用後,而不是之前。 因此,例如,如果我在運行該程序後直接單擊此按鈕,它將正常工作,只要我先單擊另一個按鈕,然後單擊有問題的那個按鈕,它就無法正確執行IF語句。如果語句執行不符合條件
正如你可能會從下面的代碼告訴,按鈕應該只亮起如果條件是真的..
- (IBAction)affectedFather:(id)sender
{
NSLog(@"status of autoDomOn %@",autoDomOn? @"On":@"Off");
NSLog(@"status of xLinkedDomOn %@",xLinkDomOn? @"On":@"Off");
if(autoDomOn==YES||xLinkDomOn==YES)
{
NSLog(@"father selected!");
[sender setImage:[UIImage imageNamed:@"buttonOptionsHighlight.png"] forState:UIControlStateNormal];
affectedMotherOut.imageView.image = [UIImage imageNamed:@"buttonOptions.png"];
affectedParentsBoth.imageView.image = [UIImage imageNamed:@"buttonOptions.png"];
}
NSLog(@"Do nothing!");
}
由於日誌輸出以下顯示,IF語句不應該被滿足,按鈕不應該變成亮起......但它確實如此。
2013-03-07 06:55:41.858 TCGA beta[6134:c07] status of xLinkedDomOn Off
2013-03-07 06:55:41.859 TCGA beta[6134:c07] Do nothing!
要儘量避免在這個問題上,我不會粘貼等方法濫發太多的代碼,但實際上我想了解是否有沒有任何理由,一個if語句,如上面的一個會忽略條件?
我已經通過其他方法來排除任何括號錯誤或內存位置錯誤,似乎沒有。很高興根據要求提供更多信息。
非常感謝您提供任何建議!
親切的問候, 山姆
您是不是指'&&而不是'||'? – 2013-03-07 07:10:22
是您的標籤autoDomOn&xLinkDomOn BOOL類型? – Ganapathy 2013-03-07 07:10:39
感謝您的回覆,||是正確的,因爲任何一個語句都可以爲TRUE。 autoDomOn和xLinkDomOn都是'bool' – Rojan501 2013-03-07 07:26:19