Botões adicionados, webview, pontos de venda, mas não podem jogar com eles no código

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

  •  21-09-2019
  •  | 
  •  

Pergunta

Fiz uma barra de ferramentas com dois botões. Eu então criei dois pontos de venda no meu controlador de classe. Em seguida, conectei o controlador aos botões e selecionei as saídas.

Finalmente, reescrevi os arquivos da classe (que adicionaram:

IBOutlet id next;
IBOutlet id previous;

para o meu arquivo .h).

Então agora, tudo parece bem. Mas então eu tento algum lugar no código para alterar o estado de um dos meus botões assim:

next.enabled = YES;

Eu tentei com si mesmo. Além disso, mas infelizmente recebo esta mensagem de erro: Erro: Solicitação de membro 'ativado' em algo que não é uma estrutura ou união

Você tem alguma idéia do que está acontecendo lá?

E sim eu tenho:

#import <UIKit/UIKit.h>

:)

Usando:

[next setEnabled:YES];

Não me dá nenhum erro, mas ainda não funciona ...

E, finalmente, para documentar os propósitos, aqui está todo o método:

- (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";
     }
}

Quando eu faço:

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

Ele retorna (nulo) ... Eu acho que deveria ser Uibarbuttonitem ...

Parece que é impossível brincar com qualquer tomada, mesmo que eu não receba erros enquanto brinca com eles ...

Foi útil?

Solução

Isso deve ser:

IBOutlet UIButton * next;
IBOutlet UIButton * previous;

Outras dicas

Não tenho certeza sobre o iPhone SDK porque não o uso, mas você habilita/desativa os itens da barra de ferramentas usando o seguinte método. Normalmente, uso o rótulo do botão para identificar qual botão eu direciono.

-(BOOL)validateToolbarItem:(NSToolbarItem*)theItem {
    BOOL shouldEnable = YES;
    NSString* itemLabel = [theItem label];
    if ([itemLabel isEqualToString:@"next"]) {
        shouldEnable = NO;
    }
    return shouldEnable;
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top