我在全屏应用中设置了UIImagePickerViewController
(状态栏最初隐藏)。但是当在模拟器上测试它时,状态栏会显示modalViewController
被解雇的时间。有什么问题?
任何帮助表示赞赏!
的Seb
答案 0 :(得分:1)
状态栏高20像素。
iPhone屏幕分辨率为宽度= 320和高度480,当它是视网膜显示时,它是640 x 960.如果以低分辨率拍摄照片,您将看到它是720x960。在相机胶卷中,您实际裁剪的图像。
您可以尝试调整图像的大小,这实在不容易。
您可以尝试关闭状态栏。
[[UIApplication sharedApplication] setStatusBarHidden:YES];
答案 1 :(得分:0)
我已经发布了一个解决方案,它是关于UIKit中的一个错误的建议。我发现了相同的情况,并发现了不良行为发生的关键时刻。
要复制错误,首先需要使用presentModalViewController呈现UIImagePicker控制器,并且图像选择器具有sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum。 它还有助于在视觉上看到错误,在呈现之前调整UIImagePicker视图的框架,以便您可以看到屏幕顶部。
然后在你的dismissViewControllerAnimated调用断点:完成:或者dismissModalViewControllerAnimated:并跳过它,观察状态栏立即被绘制(假设你的UIImagePicker不是全屏,在你的全屏应用程序中)并检查[[UIApplication] sharedApplication] isStatusBarHidden]之前和之后。
它会改变状态,但如果使用sourceType = ..Camera或... PhotoLibrary,则不会改变。
所以我建议使用PhotoLibrary而不是... SavedPhotosAlbum。