1

私のアプリでは、撮影したばかりのムービーをコア データに保存したいと考えています。これらの映画が一般的なカメラロールに収まってほしくありません。私のアイデアは、クリップを取得してオブジェクト「ムービー」にロードし、それをコアデータに保存できるようにすることでした。アドレス帳の写真によく似ています。コア データを使用すると、それが何であれ、外部レコード ファイルに保存できます。

- (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];

そして、あなたのケースでは、それがタイプである限りvideoData、データベースに保存してください。movieNSData

あなたのコード:

movie = [info objectForKey:UIImagePickerControllerOriginalImage];

写真を撮った後に UIImageから取得する必要があります。録音していると言うのであれば、それが理由ですimagePickerControllermovie = nil;

于 2013-07-18T12:11:53.680 に答える