iOS:UISwitch无法隐藏.hidden = YES

时间:2011-10-26 10:25:42

标签: ios hidden uiswitch

我有一个非常简单的用户界面。你可以从图片中看到。如果用户点击EMIT,它应该显示切换并隐藏标签读数。

如果用户点击LISTEN,它应该完全相反。

以下是代码(也包含在屏幕截图中)

-(IBAction) segmentedControlIndexChanged
{
//    LOG ( @"Seg: %d", segmentedControl.selectedSegmentIndex );

    BOOL isEmitting = ( segmentedControl.selectedSegmentIndex == 0 );
    BOOL isListening = ! isEmitting;

    self.remoteIOAudioUnit->emitting = isEmitting;

    // hide readout if we're transmitting
    labelA.hidden = labelB.hidden = labelC.hidden = lblCurrentRoom.hidden = ( isEmitting ? YES : NO );

    // hide toggles if we're listening
    switchA.hidden = switchB.hidden = switchC.hidden = ( isListening ? YES : NO );
}

从截图中可以看出,断点正在受到冲击。当我切换分段控件时代码正在执行。但奇怪的是UISwitches没有隐藏。

如果我点击其他片段(EMIT),它可以正常工作。即标签隐藏的就像他们应该做的那样。

那么为什么交换机也不会隐藏?

enter image description here

1 个答案:

答案 0 :(得分:1)

( isEmitting ? YES : NO );更改为YES。然后,如果按钮仍然可见,则表示您的IBOutlet未连接。

如果它们消失,那么您就知道isEmitting未按预期设置。