переключатель.скрытый = ДА, не работает, все розетки настроены правильно

#iphone #ios #ios4 #uiswitch

#iPhone #iOS #ios4 #пользовательский переключатель

Вопрос:

У меня возникла проблема, которая полностью сбивает меня с толку. Пожалуйста, посмотрите на приведенный ниже код, он взят из книги «Начало разработки iPhone 4», глава 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];
    }
  

}

Странно то, что он регистрирует это правильно, но элементы управления пользовательского интерфейса не скрываются / не отображаются. Я тоже пробовал это (оригинал в книге):

 - (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:

Похоже, вы, возможно, забыли подключить свои розетки в Interface Builder. Проверяйте значения leftSwitch и rightSwitch при вызове этого метода, используя точку останова или NSLog.

Комментарии:

1. Ого! Итак, да, я полностью отключился и забыл розетки. Действия, к которым прилагались, и я забыл о розетках. Спасибо, что подтолкнули меня к тому, чтобы действительно проверить!