Добавленные кнопки, WebView, добавленные розетки, но не могут играть с ними в коде

StackOverflow https://stackoverflow.com/questions/2495282

  •  21-09-2019
  •  | 
  •  

Вопрос

Я сделал панель инструментов с двумя кнопками. Затем я создал два розетки в моем контроллере класса. Затем я подключил контроллер к кнопкам и выбрал розетки.

Наконец, я переписал файлы класса (которые добавили:

IBOutlet id next;
IBOutlet id previous;

в мой файл .h).

Так что теперь все выглядит нормально. Но потом я попробую где -нибудь в коде, чтобы изменить состояние одной из моей кнопки, как это:

next.enabled = YES;

Я попробовал себя. Также, но, к сожалению, я получаю это сообщение об ошибке: Ошибка: запрос на участник «включен» в чем -то, а не в структуре или профсоюзе

У вас есть представление о том, что там происходит?

И да, у меня есть:

#import <UIKit/UIKit.h>

:)

С использованием:

[next setEnabled:YES];

не дает мне ошибки, но все еще не работает ...

И, наконец, для документирования, вот весь метод:

- (void)viewDidLoad {
    [super viewDidLoad];

     if (!self.currentLevel) {
          self.currentLevel = @"1";
     }

     NSArray *etape = [self.etapes objectForKey:self.currentLevel];
     if ([etape count] > 0) {
          self.navigationItem.title = [etape objectAtIndex:1];
          if ([etape count] > 1) {
               [next setEnabled:YES];
          }

     } else {
          self.navigationItem.title = @"Aucune étape";
     }
}

Когда я делаю:

NSLog(@"%@", [next class]);

Он возвращается (null) ... я думаю, это должно быть uibarbuttonitem ...

Кажется, что невозможно играть с какими -либо торговыми точками, даже если я не получаю никаких ошибок во время игры с ними ...

Это было полезно?

Решение

Которые должны быть:

IBOutlet UIButton * next;
IBOutlet UIButton * previous;

Другие советы

Я не уверен насчет SDK iPhone, потому что я не использую его, но вы включаете/отключите элементы панели инструментов, используя следующий метод. Я обычно использую этикетку кнопки, чтобы определить, на какую кнопку я нацелен.

-(BOOL)validateToolbarItem:(NSToolbarItem*)theItem {
    BOOL shouldEnable = YES;
    NSString* itemLabel = [theItem label];
    if ([itemLabel isEqualToString:@"next"]) {
        shouldEnable = NO;
    }
    return shouldEnable;
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top