2 votes

Comment ajuster la visibilité d'un UIBarButtonItem dans un Storyboard de manière programmatique ?

J'ai un UIBarButtonItem (défini dans le Storyboard), que j'ai assigné à ma propre classe personnalisée SwitchConsumerBarButton.

Ce que je veux faire, c'est dicter sa visibilité sur la page Init en fonction de certains critères. J'aimerais le faire de manière programmatique. J'ai essayé d'implémenter -(id) init mais il n'est pas appelé, comment puis-je contrôler l'initialisation de cet objet ? J'ai regardé les différentes méthodes d'initialisation qui peuvent être appelées pour ce type, mais je ne sais pas laquelle le Storyboard va appeler ?

@implementation SwitchBarButton

-(id) init
{
    if(self = [super init]) {
        NSLog(@"gwojbngowj");
    }
    return self;
}

@end

2voto

0x7fffffff Points 40133

Je ne sais pas si vous voulez ajuster l'alpha ou masquer le bouton, alors voici les deux.

if (myCondition == YES) {
    myButton.alpha = 0.5;
    //Or if you mean hide all together...
    [myButton setHidden:YES];
}

Si vous cherchez à créer le bouton en fonction de la variable, vous pouvez le faire comme suit :

if (myCondition == YES) {
    UIBarButtonItem *myBarItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(mySelector)];
    [self.navigationItem setRightBarButtonItem:myBarItem];
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X