2013-03-29 108 views
0

在我的Ipad App(ios6)中,我正在使用UIPopOverController。在UIPopOverController我正在展示相機。我的要求是當我按下相機捕捉按鈕時,它會推送到另一個視圖控制器。在該視圖控制器中,我想顯示從相機拍攝的圖像。UINavigationController在UIPopOverController中不工作

我使用這個代碼:

ImageCropViewController *cropViewController = [[ImageCropViewController alloc]initWithNibName:@"ImageCropViewController" bundle:nil]; 
cropViewController.sourceImage = image; 

UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:cropViewController]; 


[self.navigationController presentViewController:navController animated:YES completion:nil]; 

我已經嘗試了很多,一派,但我沒有找到任何解決方案。這是在浪費我的時間,所以如果有任何人在工作,請指導我併發布示例代碼。

+0

你想推或禮物?你還在哪裏使用UIPopoverController? – parilogic

+0

我想推。@飛揚 – Goutham

回答

0

我覺得你的self.navigationControllernil。您可以創建導航控制器,但將其用作裁剪控制器的包裝。如例:

//in AppDelegate 
    SomeController *controller = [SomeController alloc] init]; 
    UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:controller]; 
self.window.rootViewController = controller; 
[self.window makeKeyAndVisible]; 

// later 
// asume that self is SomeController 
ImageCropViewController *cropViewController = [[ImageCropViewController alloc]initWithNibName:@"ImageCropViewController" bundle:nil]; 
    cropViewController.sourceImage = image; 

    UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:cropViewController]; 


    [self.navigationController presentViewController:navController animated:YES completion:nil]; // now it will be work 

UPD:我沒有看到你使用UIPopOverController第一次,所以它可能無法正常工作。但UIPopOverController不具有navigationController屬性。

0

我終於得到了解決:

ImageCropViewController *cropViewController = [[ImageCropViewController alloc]initWithNibName:@"ImageCropViewController" bundle:nil]; 
cropViewController.sourceImage = image; 
[self.navigationController pushViewController:cropViewController animated:YES]; 

我寫了下面的代碼在ImageCropViewControllerViewWillAppear

self.contentSizeForViewInPopover = CGSizeMake(450, 350); 
相關問題