J'ai un TableView qui construit et dessine bien, mais qui se bloque lors du défilement de la vue. J'ai parcouru le débogueur et il semble que mes variables de niveau de classe sont en quelque sorte écrasées de sorte qu'elles n'existent plus lorsque le titleForHeaderInSection est à nouveau appelé. La chose étrange est que si je remplace le code:UITableView se bloque sur le défilement
-(NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
NSString *sectionTitle = [favouritesDataSections objectAtIndex:section];
return sectionTitle;
}
avec:
-(NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section
{
NSString *sectionTitle = @"Test";
return sectionTitle;
}
Il se bloque encore mais cette fois les listes de débogage pas NSString lorsque vous survolez la variable sectionTitle.
Ceci est le code que j'utilisé pour créer le point de vue et mettre en place les variables de niveau de classe:
- (void)loadView {
[super loadView];
CGRect tableSize = CGRectMake(0,0,320,460);
UITableView *favouritesTableView = [[UITableView alloc] initWithFrame:tableSize style:UITableViewStylePlain];
favouritesTableView.autoresizingMask = (UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight);
favouritesTableView.dataSource = self;
favouritesTableView.delegate = self;
favouritesTableView.rowHeight = 52;
[self.view addSubview:favouritesTableView];
}
- (void)viewDidLoad {
[super viewDidLoad];
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
// Get the full path of the favourites plist
NSString *filename = [documentsDirectory stringByAppendingPathComponent:@"Favourites.plist"];
// Initialise Dictionary and array
favouritesDataAll = [[NSMutableDictionary alloc] init];
favouritesDataSections = [[NSArray alloc] init];
NSDictionary *dict = [[[NSMutableDictionary alloc] initWithContentsOfFile:filename] retain];
favouritesDataAll = dict;
[dict release];
favouritesDataSections = [favouritesDataAll allKeys];
}
Je vais absolument fou d'essayer de suivre cette baisse - passé 2 jours jusqu'à présent ce serait extérieurement reconnaissant pour toute aide.
Meilleures salutations
Dave
OK, si je mets à retenir au bout de la ligne UITableView cela fonctionne pendant environ 3 ou quatre fois, puis la console donne: *** - [longueur UISwipeGestureRecognizer]: sélecteur non reconnu envoyé à l'instance 0x43325d0 –
et aussi: *** terminaison app en raison de l'exception uncaught 'NSRangeException', raison: '*** - [NSCFArray objectAtIndex:]: index (0) au-delà des limites (0)' –
OK, je vais me taire. La retenue était je red hareng je pense. C'est parce que j'ai remplacé le titleForHeaderInSection par @ "Test" cela a fonctionné pendant un moment. L'erreur de la console est: *** Terminaison de l'application due à l'exception non interceptée 'NSRangeException', raison: '*** - [NSCFArray objectAtIndex:]: index (57744) au-delà des limites (2)' –