iPhone 4和iPhone 5的相机叠加高度

3
我正在使用标准的UIImagePickerController,并在其中使用相机覆盖视图,默认控件。我有一个外部nib文件,我从中加载覆盖视图。问题是视图似乎在460处,因此无法完全包含iPhone 5上的相机视图。我想使用自动布局来解决这个问题,但我不知道如何告诉nib调整其大小为iPhone 4或iPhone 5的高度。
我考虑过使用setFrame,但那非常不自动布局。我也考虑过拥有2个不同的nib文件,一个用于iPhone 4,另一个用于iPhone 5,但那似乎也是错误的方法。我猜想有一种方法可以告诉nib填充当前相机视图,但我不确定是什么。请问有人能推荐“正确”的处理方法吗?
2个回答

8
您可以通过编程的方式在不同的手机尺寸下加载不同的 cameraOverlayView XIB。在 480h 屏幕上,相机控制条高约为 54px,在 568h 屏幕上则高约为 96px。您也可以按照需要设计自己的 XIB,并设置适当的自动调整大小遮罩,但是仍需要在代码中使用 setFrame 来获得正确的尺寸。
因此,无论哪种方式,您都需要编写一些代码来检测屏幕边界并加载不同的 XIB,或者执行 setFrame 操作。

0
我已经有一段时间没有使用nibs了(更喜欢storyboard),但是我相信你现在的nib中有一个UIImageView,对吗?将其设置为outlet。然后在您的m文件中,检查设备的尺寸(最近有很多人问如何检查屏幕尺寸),然后根据找到的尺寸设置uiimageview框架。它应该可以工作;)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接