Mettre à jour UIViewControllers après le basculement de la sélection de la barre de tabulation

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

Question

Dans une barre d’onglet, deux contrôleurs de vue permettent de modifier les données. Par conséquent, je dois appeler une fonction reload_data chaque fois que l'utilisateur effectue un changement dans la barre de tabulation. Comment puis-je attraper le commutateur ou l'apparence du viewcontroller. D'une manière ou d'une autre, viewDidAppear n'est pas appelé sur un commutateur de barre de tabulation. Et je ne veux pas utiliser le délégué tabbarController pour cela, car plusieurs viewControllers sont affectés (et je ne peux pas les définir tous en tant que délégué). Quel est un bon moyen de résoudre ce problème?

par exemple. cela n'a pas fonctionné:

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:YES];
    [self reloadData];
}

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:YES];
    [self reloadData];
}
Était-ce utile?

La solution

Si vous utilisez Interface Builder, assurez-vous que la classe du viewController que vous souhaitez recharger est définie (sélectionnez ViewController dans IB, puis CMD-4, assurez-vous que la classe est bien celle que vous souhaitez voir viewWillAppear et viewDidAppear. être appelé).

Si vous n'utilisez pas IB, envoyez votre code pour init / appelant le viewController.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top