2011-05-05 81 views
1

最新的「Yelp」應用程序提供了「添加商業照片」功能。拍攝照片後,預覽屏幕照常顯示。不過點擊「使用」按鈕可以顯示相同的預覽屏幕,其中包含按鈕和文本框的疊加層可以輸入標題。我讀過的方式顯示在預覽屏幕上疊加「ONLY」如下:UiImagePickerController - 附加預覽屏幕

- (void)navigationController:(UINavigationController *)navigationController 
willShowViewController:(UIViewController *)viewController 
animated:(BOOL)animated 
{ 
    if (!viewController) 
    return; 

    UIView* controllerViewHolder = viewController.view; 
    UIView* controllerCameraView = [[controllerViewHolder subviews] objectAtIndex:0]; 
    UIView* controllerPreview = [[controllerCameraView subviews] objectAtIndex:0]; 
    [controllerCameraView insertSubview:self.overlayView aboveSubview:controllerPreview]; 
} 

我還沒有得到這個工作:)不過我現在討論什麼方法用於顯示預覽屏幕兩次,即。一旦正常,然後再覆蓋?

我不知道UIImagePickerController的來龍去脈,而且我想知道是否可以在預覽之上插入疊加層,並在預覽顯示之後重新顯示預覽(不確定是否可以)或者創建並顯示一個全新的視圖(應用疊加層的預覽副本)? (不知道我會怎麼做)。

預先感謝您的輸入..

回答

3

的是的UIImagePickerController導航控制器。這意味着你可以推動由圖像選擇器控制的視圖控制器堆棧的開啓和關閉。當你得到imagePickerController:didFinishPickingMediaWithInfo:通知時,只需將其他視圖像這樣推入圖像拾取器堆棧。

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 
{ 
    NSURL *imageURL = [info objectForKey:UIImagePickerControllerMediaURL]; 
    MyCustomPreviewController *customPreview = [[MyCustomPreviewController alloc] initWithImageURL:imageURL]; 

    [picker pushViewController:customPreview animated:YES]; 
} 
相關問題