UICollectionView ne montre pas d'images

Je montre les images dans tous les directorys mais il n'affiche pas les images. Je mets NSLog dans le code pour que je puisse find quel code fonctionne et je reçois seulement "j" dans le journal. Je ne vois pas le "a" dans le journal. Que pensez-vous est faux?

- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. allImagesArray = [[NSMutableArray alloc] init]; NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSSsortingng *documentsDirectory = [paths objectAtIndex:0]; NSArray *locations = [[NSArray alloc]initWithObjects:@"Bottoms", @"Dress", @"Coats", @"Others", @"hats", @"Tops",nil ]; NSSsortingng *fPath = documentsDirectory; for(NSSsortingng *component in locations) { fPath = [fPath ssortingngByAppendingPathComponent:component]; } NSArray *directoryContent = [[NSFileManager defaultManager] directoryContentsAtPath: fPath]; collectionTrash.delegate =self; collectionTrash.dataSource=self; for(NSSsortingng *str in directoryContent){ NSLog(@"i"); NSSsortingng *finalFilePath = [fPath ssortingngByAppendingPathComponent:str]; NSData *data = [NSData dataWithContentsOfFile:finalFilePath]; if(data) { UIImage *image = [UIImage imageWithData:data]; [allImagesArray addObject:image]; NSLog(@"array:%@",[allImagesArray description]); }} for(NSSsortingng *folder in locations) { // get the folder contents for(NSSsortingng *file in directoryContent) { // load the image } }} - (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView { NSLog(@"j"); return 1; } - (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section { return [allImagesArray count]; } -(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath { static NSSsortingng *reuseID = @"ReuseID"; TrashCell *mycell = (TrashCell *) [collectionView dequeueReusableCellWithReuseIdentifier:reuseID forIndexPath:indexPath]; UIImageView *imageInCell = (UIImageView*)[mycell viewWithTag:1]; imageInCell.image = [allImagesArray objectAtIndex:indexPath.row]; NSLog(@"a"); return mycell; } 

N'hésitez pas à comme pour plus de code.

Si vous regardez l'exception, elle vous indique très précisément ce qui ne va pas:

Vous essayez d'appeler une méthode 'length' sur un tableau, qui n'existe tout simplement pas. Vous voulez utiliser count ici à la place. Ce n'est pas dans le code que vous avez publié, alors faites juste une search de length et vous le findez probablement assez facilement si le projet n'est pas énorme.

NSSsortingng *fPath = [documentsDirectory ssortingngByAppendingPathComponent:locations]; vous donne un avertissement, car les locations sont un tableau. Pensez-y – n'a tout simplement aucun sens: lequel de ses éléments voulez-vous append au path?

Comme je pense à ce sujet, les deux erreurs se rapportent probablement les uns aux autres: Vous avez simplement ignoré l'erreur de time de compilation – ou d'avertissement – pour la fPath, et maintenant la méthode ssortingngByAppendingPathComponent: appelle la longueur sur son paramètre, qui est une méthode de la NSSsortingng attendue.

Bottom line: N'ignorez pas les avertissements du compilateur! Si vous les réparez, vous réduisez probablement aussi les plantages.