switch.hidden = YES无法正常工作,所有插座都正确设置

时间:2011-05-09 22:15:42

标签: iphone ios ios4 uiswitch

我遇到的问题让我感到非常困惑。请看下面的代码,它来自“开始iPhone 4开发”一章。我是新手:)

- (IBAction)toggleControls:(id)sender
{
    if([sender selectedSegmentIndex] == kSwitchesSegmentIndex)
    {
        NSLog(@"Show switches");
        [self.leftSwitch setHidden:NO];
        [self.rightSwitch setHidden:NO];
        [self.doSomethingButton setHidden:YES];
    } 
    else
    {
        NSLog(@"Hide switches");
        [self.leftSwitch setHidden:YES];
        [self.rightSwitch setHidden:YES];
        [self.doSomethingButton setHidden:NO];
    }

}

奇怪的是它正确记录了这个,但ui控件没有隐藏/显示。 我也试过这个(原书):

- (IBAction)toggleControls:(id)sender
{
    if([sender selectedSegmentIndex] == kSwitchesSegmentIndex)
    {
        NSLog(@"Show switches");
        leftSwitch.hidden = NO;
        rightSwitch.hidden = NO;
        doSomethingButton.hidden = YES;
    } 
    else
    {
        NSLog(@"Hide switches");
        leftSwitch.hidden = YES;
        rightSwitch.hidden = YES;
        doSomethingButton.hidden = NO;
    }
}

1 个答案:

答案 0 :(得分:2)

听起来您可能忘记在Interface Builder中连接您的插座。使用断点或NSLog调用此方法时,请检查leftSwitch和rightSwitch的值。