行を選択した後、配列にデータを入力したいと思います。次に、関数を使用して配列にデータを入力します。これが状況です。アルバムのタイトルを表示するテーブルビューがあります。行を選択すると、FGalleryライブラリを使用してすべての画像が表示されます。これが私の配列を作成するための私の関数です。
- (NSMutableArray *)getAllPicturesOfAlbumId: (int)AlbumId
{
NSLog(@"tot hier");
_picturesForAlbum = [[NSMutableArray alloc]init];
NSArray *results = [[NSArray alloc]init];
//picture_Url = @"";
NSLog(@"tot hier");
NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSPredicate *predicate = [NSPredicate predicateWithFormat:@"whichAlbum.album_id == %d", AlbumId];
[request setEntity:[NSEntityDescription entityForName:@"Picture" inManagedObjectContext:self.genkDatabase.managedObjectContext]];
[request setPredicate:predicate];
NSError *error = nil;
NSLog(@"tot hier");
results = [self.genkDatabase.managedObjectContext executeFetchRequest:request error:&error];
if (results == nil) {
// handle errors
NSLog(@"geen resultaten");
} else if (results.count == 0) {
// nothing found
NSLog(@"0 resultaten");
} else {
for(int i = 0; i < results.count ; i++){
// NSLog(@"%@",[results valueForKey:@"url"]);
[_picturesForAlbum addObject: [results valueForKey:@"url"]];
}
}
return _picturesForAlbum;
}
これが私のFGalleryメソッドです。
- (int)numberOfPhotosForPhotoGallery:(FGalleryViewController *)gallery
{
return [networkImages count];
}
- (FGalleryPhotoSourceType)photoGallery:(FGalleryViewController *)gallery sourceTypeForPhotoAtIndex:(NSUInteger)index
{
return FGalleryPhotoSourceTypeNetwork;
}
- (NSString*)photoGallery:(FGalleryViewController *)gallery urlForPhotoSize:(FGalleryPhotoSize)size atIndex:(NSUInteger)index {
return [networkImages objectAtIndex:index];
}
そして、これは私のdidSelectRowAtIndexPathで行うことです
networkImages = [[NSArray alloc] initWithArray:[self getAllPicturesOfAlbumId:indexPath.row]];
networkGallery = [[FGalleryViewController alloc] initWithPhotoSource:self];
[self.navigationController pushViewController:networkGallery animated:YES];
なんらかの理由で、私のnetworkImagesには、メソッド「getAllPicturesOfAlbumId」から返される配列が数回入力されます。そのため、次のエラーが発生すると思います。
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSArrayI length]: unrecognized selector sent to instance 0xa15d090'
誰かが問題が何であるかについての考えを持っていますか?
前もって感謝します。