2010-11-20 12 views
0

Comme je charge un UITableView il accès numberOfSectionsInTableView: deux fois et planter l'application avec "EXC_BAD_ACCESS". Je n'ai jamais vécu cela auparavant.UITableView accès mberOfSectionsInTableView deux fois et plantage

Est-ce que numberOfSectionsInTableView doit être accédé deux fois en effectuant le chargement initial de la tableview?

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView { 
    NSLog(@"numberOfSectionsInTableView"); 
    // Return the number of sections. 
    NSLog(@"Count: %i", [self.playerArray count]); 
    return 1; 
} 
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section   { 
    NSLog(@"numberOfRowsInSection"); 
    // Return the number of rows in the section. 
    NSLog(@"time for return"); 
    return [self.playerArray count]; 
} 

La réponse est:

2010-11-20 19: 35: 06,459 FamQuiz_v2 [10151: 207] numberOfSectionsInTableView
Langue actuelle: auto; actuellement objective-c
20/11/2010 19: 35: 12,408 FamQuiz_v2 [10151: 207] Count: 2
(BDG) continuer
20/11/2010 19: 35: 28,918 FamQuiz_v2 [10151: 207] numberOfSectionsInTableView
Signal reçu du programme: "EXC_BAD_ACCESS".
Signal reçu du programme: "EXC_BAD_ACCESS".

}

Répondre

0

Je vous assurer que votre propriété est conservée playerArray correctement. Je ne suis pas sûr pourquoi cette méthode est appelée deux fois, mais il n'y a rien qui dit qu'il ne peut pas ou ne sera pas appelé plusieurs fois.

+0

J'ai placé [playerArray retain] dans "numberOfSectionsInTableView" et cela a fonctionné. Je suppose que la raison en était qu'il a été consulté deux fois. – PeterK

+0

Un GRAND merci, les gens dans ce forum est incroyable :-) – PeterK

+0

ce n'est probablement pas le bon endroit pour mettre votre retenue. Vérifiez qu'il est conservé correctement lorsqu'il est créé. – TomSwift