2012-03-05 36 views
0

我有一個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]; 

我嘗試添加了UIImagePickerControllerUIIViewController,這造成了一些奇妙的凍結。

最後我試着註釋掉didReceivedMemoryWarningUIViewController's[super didReceivedMemoryWarning]行。這也沒有效果。我想接管UIImagePicker也需要。我該如何回饋?

回答

0

我會建議您在顯示UIImagePickerController之前將您的MPMoviePlayerController設置爲零,或者可能暫時將其視圖從界面中取出。這兩個都包含一個電影播放器​​視圖,但在應用程序界面中一次只能有一個電影播放器​​視圖。因此,他們可以互相干擾,這可能是發生在你身上的事情。

相關問題