在为iPhone 6 Plus开发时(所有其他设备不受影响),如果您有一个UI元素应该从一端水平填充到另一端,那么前导和尾随约束通常为-16,因为假定0点距离边缘为16个点。
在Storyboard和除了iPhone 6 Plus(物理设备和模拟器)之外的所有设备上都看起来很好。
如您在此处所见,我对Storyboard上此测试视图的定义:
在iPhone 6 Plus上,这就是我得到的结果:
这个黑色视图左右两侧明显留下了一些未填充的边框。我进行了一些测试,将约束设置为-19和-20,以查看空间是否会被填充:
这是它的样子:
在左边,约束为-20没有边框,在右边,约束为-19,有1像素的边框。
我的结论是,在iPhone 6 Plus上,0点距离边缘的距离为20个点,而不是所有其他设备中的16个点。这不能是故意的,这显然是iOS的一个错误。
有人遇到过这个问题吗?是否有一种解决方法可以使其保持一致,这样我就不必为iPhone 6 Plus添加硬编码的异常了?
在Storyboard和除了iPhone 6 Plus(物理设备和模拟器)之外的所有设备上都看起来很好。
如您在此处所见,我对Storyboard上此测试视图的定义:
在iPhone 6 Plus上,这就是我得到的结果:
这个黑色视图左右两侧明显留下了一些未填充的边框。我进行了一些测试,将约束设置为-19和-20,以查看空间是否会被填充:
这是它的样子:
在左边,约束为-20没有边框,在右边,约束为-19,有1像素的边框。
我的结论是,在iPhone 6 Plus上,0点距离边缘的距离为20个点,而不是所有其他设备中的16个点。这不能是故意的,这显然是iOS的一个错误。
有人遇到过这个问题吗?是否有一种解决方法可以使其保持一致,这样我就不必为iPhone 6 Plus添加硬编码的异常了?