我正在尝试编写一个具有某些相机功能的应用程序,并使用覆盖视图用图像来装饰它。
这就是我实现该应用程序的方式:
我将 UIImagePickerController 用于用户相机接收的内容,并将 UIImageView 作为子视图添加到cameraOverlayView 上,以便它的工作方式如下:
(图像位于http://www.manna-soft.com/test/uploads/UIImagePickerView-portrait.jpg http://www.manna-soft.com/test/uploads/UIImagePickerView-portrait.jpg)
在 iPad 2 就位之前,这一切都很好......它会像这样自动旋转并破坏布局:
(图像位于http://www.manna-soft.com/test/uploads/UIImagePickerView-landscape.jpg http://www.manna-soft.com/test/uploads/UIImagePickerView-landscape.jpg)
UIImagePickerController 在 iPhone、ipod touch 或原始 iPad 上永远不会旋转,但在 iPad2 上却可以。
UIImagePickerContller 的类引用说它“仅支持纵向模式”,但发生的情况是它像那样自动旋转......
有没有办法可以禁用自动旋转?
我尝试在显示 UIImagePickerController 的视图控制器的 shouldAutorotateToInterfaceOrientation: 方法中返回 NO,但它仍然旋转。
提前致谢。
可以将overlay view添加到窗口中,然后将window.superview设置为相机OverlayView。
关闭 ModalController 时,可以从窗口中删除覆盖视图。
根据应用程序的结构,此解决方案的应用可能有点棘手。
YourAppDelegate *appDelegate = (YourAppDelegate *) [[UIApplication sharedApplication] delegate];
[appDelegate.window addSubview:overlayView];
imagePickerController.cameraOverlayView = appDelegate.window.superview;
//When dismissing the UIImagePicker
[self dismissModalViewControllerAnimated:YES];
[OverlayView removeFromSuperview];
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)