Iphone UIImagePickerController(sourceTypeCamera)不';t顶部/状态栏上的填充屏幕
我正在从主视图控制器中调用UIImagePickerController(sourceTypeCamera)作为modalViewController。 但是,UIImagePickerController并没有像所附的图像所示那样填充顶部的屏幕。Iphone UIImagePickerController(sourceTypeCamera)不';t顶部/状态栏上的填充屏幕,iphone,uiimagepickercontroller,uistatusbar,Iphone,Uiimagepickercontroller,Uistatusbar,我正在从主视图控制器中调用UIImagePickerController(sourceTypeCamera)作为modalViewController。 但是,UIImagePickerController并没有像所附的图像所示那样填充顶部的屏幕。 知道是什么原因导致了这种情况,以及如何修复吗?您应该更改imagePickerController的frame属性。初始化时,即 imagePickerController.view.frame.origin.y=20 一些代码可能会有帮助 如果相关
知道是什么原因导致了这种情况,以及如何修复吗?您应该更改imagePickerController的frame属性。初始化时,即
imagePickerController.view.frame.origin.y=20 一些代码可能会有帮助
如果相关,请尝试设置
bounds
属性,而不是frame
属性。在我的应用程序中,在navigationController内部的viewcontroller中-我只是这样做:
UIImagePickerController* imagePickerController_;
imagePickerController_.sourceType = UIImagePickerControllerSourceTypeCamera;
[self presentModalViewController:imagePickerController_ animated:YES];
及
@接口CustomViewController:UIViewController
工作没有问题。如果你仍然有问题,那么你能分享一些代码吗?您的应用程序具有什么样的导航结构(tabbarcontroller、navigationcontroller等等?),如何呈现imagepickercontroller?经过多次尝试,我发现从
[[[[UIApplication sharedApplication]delegate]窗口]rootViewController]调用presentViewController
解决了问题。UIViewController上有一个布尔值可能对您有用:wantsFullScreenLayout
。根据文件,这是:
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];
一个布尔值,指示视图是否应位于状态栏的下方
我遇到了几个问题,尤其是在iOS5上,状态栏下面有视图,尤其是以模式显示时。我发现最好的方法是将该值设置为YES
,然后手动将视图布置在状态栏下方。仅供参考,状态栏的高度为20。
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
打电话之前
[self presentModalViewController:picker animated:YES]
这绝不是调用简单选取器的预期行为,请附上如何表示的代码,以便我们更好地理解问题。@natan:只有在顶部有一个黑色条,或者在底部有一个黑色条?我想你在底部也有一个黑条,但是用工具栏隐藏了它。是吗?在使用[UIApplication sharedApplication]委派]窗口]rootViewController]presentViewController:录像机动画:是完成:^{}]时,我仍然有同样的问题;或[self.window.rootViewController presentModalViewController:videoRecorder animated:YES];从AppDelegate类中,您正在哪个iOS中尝试此操作?
[self presentModalViewController:picker animated:YES]