我有一個iPhone應用程序,我將UIImagePickerController
加載到UIViewController
上。然後我在相機的頂部有一個自定義的視圖。現在,當用戶拍攝照片時,它會被加載到一個UIImageView
上,該照片會向用戶詢問您是要使用該照片還是另一張照片(從UIImageView
中刪除圖像)。這工作完美。MPMoviePlayerController關閉我的UIImagePickerController
現在,如果用戶剛剛錄製了視頻,我想在視頻的某個位置進行快照預覽,並將其作爲靜態圖像顯示在同一個UIImageView
中。我使用以下代碼執行此操作:
MPMoviePlayerController *videoPlayer = [[MPMoviePlayerController alloc] init];
videoPlayer.shouldAutoplay = NO;
[videoPlayer setContentURL:[info valueForKey:UIImagePickerControllerMediaURL]];
UIImage *videoScreenShot = [videoPlayer thumbnailImageAtTime:(videoPlayer.duration/2.0) timeOption:MPMovieTimeOptionNearestKeyFrame];
photoPreview.image = videoScreenShot;
[videoPlayer release]
這可按預期工作。問題是如果我想拍攝另一個視頻。當我打電話:
[videoPlayer setContentURL:[info valueForKey:UIImagePickerControllerMediaURL]];
相機快門關閉,相機看似駁回。試圖拍照或錄製視頻給我:
UIImagePickerController: ignoring request to take picture; camera is not yet ready.
UIImagePickerController: ignoring request to start video capture; camera is not yet ready.
我已經打過電話後以下,其中有沒有效果:再次
myImagePicker.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType: UIImagePickerControllerSourceTypeCamera];
[myImagePicker setSourceType:UIImagePickerControllerSourceTypeCamera];
我嘗試添加了UIImagePickerController
到UIIViewController
,這造成了一些奇妙的凍結。
最後我試着註釋掉didReceivedMemoryWarning
的UIViewController's
[super didReceivedMemoryWarning]
行。這也沒有效果。我想接管UIImagePicker
也需要。我該如何回饋?