2010-01-25 3 views
0

Je rencontre un problème avec la connexion IBoutlet UITableView. Il semble que l'IBOutlet n'est pas connectée à TaleView. Je définis le delgate et la source de données sur le propriétaire du fichier et définissez l'iboutlet sur la tableview dans la plume. La tableview est bien initialisée. Je veux juste faire un peu de reloadData et ça ne marche pas. J'essaie de faire un deselectRow juste pour voir si ce n'est pas reloadData problème mais il ne désélectionne pas donc je suppose que le iboutlet n'est pas associé à ma tableview. Cette vue de table est dans un viewcontroller appelé modalViewController.problème avec la connexion IBoutlet UITableView

Voici un code: Mon .h:

@interface AddEditProjectsViewController : UIViewController <UITableViewDelegate, UITableViewDataSource, UIActionSheetDelegate, UIImagePickerControllerDelegate, UINavigationControllerDelegate, UITextViewDelegate, UIAlertViewDelegate>{ 

IBOutlet UITableView *addEditProjectTable; 
} 

@property (nonatomic, conserver) IBOutlet UITableView * addEditProjectTable;

@end

Mon fichier .m:

- (void)viewWillAppear:(BOOL)animated { 

(...) 

[addEditProjectTable reloadData]; 

[super viewWillAppear:animated]; 

Merci pour toute aide! :)

Répondre

0

Avez-vous réellement implémenté la source de données et délégué des méthodes telles que cellForRowAtIndexPath?

+0

Oui J'ai implémenté les méthodes datasource et delegate. Je veux faire les données de rechargement pour changer les titres d'en-tête et de pied de page. – ideafactory

0

Je ne sais pas si cela est la cause de votre problème, mais

[super viewWillAppear:animated]; 

doit être appelée avant votre propre code.

+0

J'ai essayé mais cela ne fonctionne pas :( merci quand même! – ideafactory

0

Vous avez dit: "Il semble que l'IBOutlet n'est pas connecté à TaleView." Alors vous avez dit, "et placez l'iboutlet à la tableview dans la plume." Après avoir "défini l'iboutlet sur la tableview dans la plume", n'est-il toujours pas connecté? Vous pouvez le vérifier en regardant l'onglet 'Connexions' dans l'inspecteur dans IB alors que le tableau est sélectionné. Vous devriez voir toutes les connexions (source de données, délégué et prise). Si elle n'est pas connectée et qu'elle ne vous permet pas de connecter la tableview à votre prise, essayez de redémarrer IB et Xcode.

Si la connexion est là, alors vous avez un autre problème. Dans ce cas, essayez de créer un nouveau projet à partir du modèle 'Application basée sur la navigation' et voyez si cela fonctionne comme prévu. Puis comparez votre code à cela et le problème devrait émerger.

Meilleures salutations,

+0

J'ai regardé les connexions dans le IB et tout est connecté, le délégué, la source de données et ma sortie Mon projet est Application basée sur la navigation, mais j'ai mis cette viewcontroller comme modalview cause que je ne veux pas mettre ceci au contrôleur de navigation Merci – ideafactory

+0

Je suggérais simplement que vous regardez le modèle pour vous assurer que vous réglez la même chose. modalview "?Appellez-vous presentModalViewController: animated :? Pouvez-vous afficher votre code de présentation de vue modale? Avez-vous défini un point d'arrêt dans viewDidLoad pour vous assurer qu'il est appelé? –

0

J'appelle la modalview cette façon:

if (self.addEditTasksController == nil) { 
     AddEditTasksViewController *addEditTaskCont = [[AddEditTasksViewController alloc] initWithNibName:@"AddEditTasksViewController" bundle:nil]; 
     self.addEditTasksController = addEditTaskCont; 
     [addEditTaskCont release]; 
    } 
    [self presentModalViewController:addEditTasksController animated:YES]; 

Le viewDidLoad est appelé à chaque fois que le viewWillAppear.

Merci.