2012-06-14 52 views
6

我從我的MainViewController調用一個UIImagePickerController(sourceTypeCamera)作爲modalViewController。 但是,UIImagePickerController不會將頂部的屏幕填滿,如附圖所示。 UIImagePickerController strange behavior 任何想法可能導致這種情況,以及如何解決?UIImagePickerController(sourceTypeCamera)不會在頂部/狀態欄上填充屏幕

+1

這不是在呼籲建立一個簡單的選擇器任何預期的行爲之前,請附上代碼如何呈現它,以便我們可以更好地瞭解問題。 –

+0

@natan:只有在頂端你有一個黑色的酒吧或底部有一個?我想你的底部也有一個黑色的條,但已經隱藏在工具欄中。是對的嗎? –

回答

4

經過大量的嘗試,我發現從[[[[UIApplication sharedApplication] delegate] window] rootViewController]調用presentViewController解決了這個問題。

+2

我在使用[[[[[[UIApplication sharedApplication]委託]窗口] rootViewController] presentViewController:videoRecorder animated:YES completion:^ {}]; [self.window.rootViewController presentModalViewController:videoRecorder animated:YES];來自AppDelegate類 – richy

+0

你在iOS中試過這個嗎? –

0

您應該更改imagePickerController的框架屬性。當初始化時

imagePickerController.view.frame.origin.y = 20;

+0

感謝您的幫助,但沒有奏效=( –

1

一些代碼會有幫助。

如果相關,請嘗試設置bounds屬性而不是frame屬性。

1

在我的視圖控制器是內部navigationController應用 - 我做簡單的像這樣:

UIImagePickerController* imagePickerController_; 

imagePickerController_.sourceType = UIImagePickerControllerSourceTypeCamera; 

[self presentModalViewController:imagePickerController_ animated:YES]; 

@interface CustomViewController : UIViewController <UIImagePickerControllerDelegate> 

作品沒有問題。如果你仍然有問題,那麼你能分享一些代碼嗎?你的應用程序有什麼樣的導航結構(tabbarcontroller,navigationcontroller,..?)?,你如何呈現imagepickercontroller?

-1
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init]; 
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera; 


[self.view addSubview:imagePicker.view]; 

[imagePicker viewWillAppear:YES]; 
[imagePicker viewDidAppear:YES]; 

[[UIApplication sharedApplication] setStatusBarHidden:NO animated:NO]; 
1

UIViewController上有一個布爾值,可能對您有用:wantsFullScreenLayout。根據文檔,這是:

一個布爾值,指示視圖是否應該低於狀態欄。

我有幾個問題,特別是在iOS 5上,視圖狀態欄不足,尤其是在模態顯示時。我發現的最好的事情是將此值設置爲YES,並在狀態欄下方手動佈置您的視圖。僅供參考,狀態欄有20

0

呼叫

[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone]; 

的高度呼籲

[self presentModalViewController:picker animated:YES] 
相關問題