2009-07-29 7 views
0

Bonjour J'utilise une application de barre d'onglets.Comment recharger les vues lorsque l'utilisateur Cliquez sur les onglets?

Je souhaite recharger une vue lorsque l'utilisateur appuie sur l'un des boutons de tabulation. Si l'utilisateur appuie sur le premier bouton de la barre d'onglets, la première vue est chargée une seule fois.

J'ai besoin lorsque l'utilisateur appuie sur le premier bouton de la barre d'onglets, vue doit être rechargé.

cela est nécessaire, en raison de la raison suivante en première vue - j'ai la liste des employés & en deuxième vue - j'ai ajouter écran des employés

après avoir ajouté un employé, il est évident que l'utilisateur cliquera sur le bouton de la barre d'onglets un pour voir l'enregistrement nouvellement ajouté.

mais vue n'est pas chargé à nouveau,

donc, je dois recharger vue toute

méthode qui est -viewDidLoad {} doit être invoqué à chaque fois.

aidez-moi s'il vous plaît.

Je serai reconnaissant complet.

+0

Tim, vue est chargée une seule fois, l'essayer. Je veux charger la vue à chaque fois que le bouton Tab est enfoncé. –

+0

Tim, barre d'onglets - n'allez même pas voir la section apparaîtra. –

+0

Je ne suis pas d'accord - J'ai une application qui utilise un UITabBarController, et elle appelle viewWillAppear chaque fois que je change d'onglet. Essayez ceci: '- (void) viewWillAppear {NSLog (@" view apparaîtra "); [super viewWillAppear]; } ' – Tim

Répondre

4

Ne comptez pas sur viewDidLoad pour être appelé chaque fois qu'une vue apparaît. Au lieu de cela, vous devez déplacer le code dans viewWillAppear (ou mieux encore, déplacez-le dans une méthode distincte et appelez cette méthode depuis viewWillAppear).

Par exemple:

- (void)loadEmployeeData { 
    // Your code here 
} 

- (void)viewWillAppear { 
    [super viewWillAppear]; 

    [self loadEmployeeData]; 
}

En général, vous devez mettre le code de chargement qui n'a besoin que d'exécuter une fois (mais peut exécuter plusieurs fois) dans viewDidLoad, le code qui doit exécuter chaque fois une vue est affichée dans viewWillAppear ou viewDidAppear, et le code qui peut s'exécuter avant même que la vue se charge ou absolument doit uniquement s'exécuter une fois en initWithNibName:bundle:.

Questions connexes