如果检查BOOL变量,我会遇到奇怪的行为。执行总是进入'if(wasViewHidden)'条件。无论是ViewViewHidden == NO;无论我怎么检查它。我做错了什么?
代码几乎解释了自己
- (void)onButton:(UIButton *)sender
{
BOOL wasViewHidden;
[self showHideView:&wasViewHidden];
if (wasViewHidden) {
// Always entering.
// (lldb) p wasViewHidden
// (BOOL) $0 = NO
}
}
- (void)showHideView:(BOOL *)previousState
{
static BOOL isHidden = YES;
if (previousState)
*previousState = isHidden;
// show or hide the view
isHidden = !isHidden;
}
更新 (已解决)
感谢所有评论者。我了解到代码是事实正确的(并且我的头部没有任何问题)。 xcode重启后 - >干净 - >重建它正常工作 - 正如Leo Natan建议的那样。