1

在我的应用程序中,我想将刚刚拍摄的电影保存到核心数据中。我不希望这些电影最终出现在一般的相机胶卷中。我的想法是获取剪辑并将其加载到对象“电影”中,然后我可以将其保存到 cor 数据中。很像地址簿中的照片。核心数据让我们保存到外部记录文件中,不管是什么。

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
    movie = [info objectForKey:UIImagePickerControllerOriginalImage];

但是当我去保存时,电影显示为零。

  NSManagedObjectContext *context = [self managedObjectContext];
    NSManagedObject *newMedia = [NSEntityDescription insertNewObjectForEntityForName:@"Media" inManagedObjectContext:context];
    [newMedia setValue:@"Video Clip " forKey:@"title"];
    [newMedia setValue:now forKey:@"date_time"];
    [newMedia setValue:movie forKey:@"movie"];

我希望有人能指出我正确的方向。谢谢

4

1 回答 1

2

你可以得到这样的视频:

NSURL *videoURL = [info objectForKey:UIImagePickerControllerMediaURL];
NSData *videoData = [NSData dataWithContentsOfURL:videoURL];

并保存videoDatain 数据库,在您的情况下movie,只要它NSData在类型中。

你的代码:

movie = [info objectForKey:UIImagePickerControllerOriginalImage];

应该在你拍照后得到UIImage来自imagePickerController,如果你说你正在录制,那就是为什么 movie = nil;

于 2013-07-18T12:11:53.680 回答