我存储在从照片库中我的文档目录的视频。 现在我想显示其存储在我的文档目录中的所有影片..但我不知道它是如何可能的??? 其实我想显示所有视频像它在照片库中打开(在单排四个视频)..而当我在任何视频,请点击......该视频开始播放...
任何人可以帮助我这是为了显示从文件目录中的所有影片的ViewController的最佳途径....感谢名单......
- (void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
NSURL * movieURL = [info valueForKey:UIImagePickerControllerMediaURL] ;
NSData * movieData = [NSData dataWithContentsOfURL:movieURL];
NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [documentPaths objectAtIndex:0];
NSString *fullPath = [documentsDirectory stringByAppendingPathComponent:[[self imageNameTextField]text]];
fullPath = [fullPath stringByAppendingFormat:@".MOV"];
[ movieData writeToFile:fullPath atomically:YES];
}
我建议你使用一个开源网格视图控件。 您可以在GitHub上找到它们。 例如, BDDynamicGridViewController很有趣。 但它不是唯一的选择。 还有AQGridView 。
另外,有一种流行的开源库,称为Three20和它有它的升级,被称为雨云。 该库中有照片显示网格自定义控件。 您可以用来显示视频缩略图网格相同。 例如,尝试这个 。
之后,您将设法使用或创建网格视图控件,您将需要为视频缩略图生成。 使用这个主题用于这一目的。
要访问存储在您需要使用资产库中的设备上的照片库中的视频。 下面的代码演示了如何获得访问在照片库中的第一个视频:
ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];
// Enumerate just the photos and videos group by using ALAssetsGroupSavedPhotos.
[library enumerateGroupsWithTypes:ALAssetsGroupSavedPhotos usingBlock:^(ALAssetsGroup *group, BOOL *stop) {
// Within the group enumeration block, filter to enumerate just videos.
[group setAssetsFilter:[ALAssetsFilter allVideos]];
// For this example, we're only interested in the first item.
[group enumerateAssetsAtIndexes:[NSIndexSet indexSetWithIndex:0] options:0
usingBlock:^(ALAsset *alAsset, NSUInteger index, BOOL *innerStop) {
// The end of the enumeration is signaled by asset == nil.
if (alAsset) {
ALAssetRepresentation *representation = [alAsset defaultRepresentation];
NSURL *url = [representation url];
AVAsset *avAsset = [AVURLAsset URLAssetWithURL:url options:nil];
// Now you have the AV asset for the video.
}
}];
}
failureBlock: ^(NSError *error) {
// Typically you should handle an error more gracefully than this.
NSLog(@"No groups");
}];
[library release];
这个例子是AVFoundation编程指南,更多的细节将在苹果开发者网站
我也犯了同样的项目为我的客户之一。 我可以告诉你的想法,但水湿告诉你的代码。 我们的想法是同时服用或保存录像拍摄每个视频的起始帧,并保存为PNG图像作为视频的图标。 通过这种方式,您将获得每个视频的图标。 保存不同的文件夹中的所有图像,每个图像可与它的视频链接的方式。 现在,通过下面的代码检索文件夹中的所有视频
NSFileManager *filemgr;
filemgr = [NSFileManager defaultManager];
filelist = [filemgr contentsOfDirectoryAtPath:path error:nil];
*文件清单:是的NSArray
以同样的方式获取的视频图标。
制作按钮的网格视图。 按钮的图像集为一体的视频图标。 显示视频名称。 当点击视频打开一个新的视图控制器,使视频播放器疗法播放视频出现。