Je vois beaucoup de questions à ce sujet sur SO, mais leurs réponses ne me font rien. Je présente un popover utilisant le storyboard. Après un moment, je veux rejeter ce popover par programme.Essayer de rejeter un popover qui a été présenté par storyboard
J'ai essayé beaucoup de choses mais le dernier essai consiste à créer une classe pour le contrôleur de vue qui est à l'intérieur du survol. La classe est comme ceci:
- (id)initWithCoder:(NSCoder *)aDecoder {
self = [super initWithCoder:aDecoder];
if (self) {
[self initializeNotification];
}
return self;
}
- (void) initializeNotification {
[[NSNotificationCenter defaultCenter]
addObserverForName:@"closePopover"
object:self
queue:[NSOperationQueue mainQueue]
usingBlock:^(NSNotification * _Nonnull note) {
[self dismissViewControllerAnimated:YES completion:nil];
}];
}
puis, à partir du code principal que je posterai une notification comme
[[NSNotificationCenter defaultCenter]
postNotificationName:@"closePopover"
object:self];
et rien ne se passe ... la popover continue là.
pourquoi?
Partager code complet, si vous le pouvez – Krunal
c'est la pleine code. Je clique sur un bouton, le bouton affiche un ViewController de cette classe. J'essaie de rejeter ça plus tard. Ça ne fait rien. – SpaceDog