3

我正在使用标准 UIImagePickerController 并使用相机覆盖视图,默认控件。我有一个外部 nib 文件,我从中加载覆盖视图。问题是视图似乎在 460,所以没有完全包含 iphone 5 上的相机视图。我想使用自动布局来解决这个问题,但我不知道如何告诉笔尖调整它大小为 iphone 4 或 iphone 5 的高度。

我考虑过使用 setFrame,但那是非常不自动的布局。我还考虑过使用 2 个不同的 nib 文件,一个用于 iphone 4,一个用于 iphone 5,但这似乎也是错误的方法。我猜有某种方法可以告诉笔尖填充当前的相机视图,但我不确定它是什么。有人可以推荐“正确”的方法来处理这个吗?

4

2 回答 2

8

您可以根据手机尺寸以编程方式加载不同的 cameraOverlayView XIB。相机控制条在 480h 屏幕上大约 54px 高,在 568h 屏幕上大约 96px 高。

或者,您当然可以使用适当设置的自动调整大小掩码来设计您的 XIB,但随后需要在代码中执行 setFrame 以获得正确的尺寸。

因此,无论哪种方式,您都在编写一些代码来检测屏幕边界并加载不同的 XIB 或执行 setFrame。

于 2012-09-26T17:18:45.440 回答
0

我已经有一段时间没有使用笔尖了(首选情节提要),但我相信到目前为止您所拥有的是笔尖中的 UIImageView,对吧?让它成为一个出口。然后在你的 m 文件中,检查设备的尺寸(最近很多人问这个如何检查屏幕尺寸),然后根据找到的尺寸设置 uiimageview 框架。它应该工作;)

于 2012-09-23T23:49:07.620 回答