2015-05-31 55 views
1

我正在构建一个UICollectionView,其中每个单元的大小为159x159。 当应用程序在iOS8上它提供了运行(无论模拟器我选择:iPhone 4S,5,5S,6,6所加):UICollectionViewCell在iOS7和iOS上的大小不一样8

on iPhone Simulator with iOS 8.3

但它也有不一样的尺寸上iOS7:

on iPhone Simulator with iOS 7.1

WTF?请注意,即使我的SearchBar在两个模拟器上的宽度都不相同。

+1

如果使用自动布局,你必须取消约束保证金选项。我希望这会解决你的搜索栏宽度。 – Sreejith

+1

同时看看这个 - http://stackoverflow.com/questions/25807545/what-is-constrain-to-margin-in-storyboard-in-xcode-6 – Sreejith

+0

就是这样:) thx太 – QLag

回答

1

原因是iOS8有布局边距,而iOS7没有。你已经将观点限制在边缘。

我会促成它的方式是,如果你希望它看起来像iOS8版本,那么不要将视图限制在边缘,而是限制到边缘本身,并且在视图和边缘。如果您正在使用故事板进行自动布局,那么您会注意到,如果限制边距,您可以打开或关闭。

margins constraint

+0

哦,上帝,我知道这个新的边距约束,但我忘了......事实上,AutoLayout在这个故事板上启用,但我现在还没有创建任何约束。因为它很好地显示在iOS8的多个模拟器上,我以为我不需要约束...... – QLag

+0

是的,这是对自动布局的重大改变。如果你想让iOS7的视图有边距,你可能需要约束。 – Yarneo

+0

是的它现在工作得很好:)(我的UICollectionView和我的Viewcontroller的视图之间有约束)。我没有选中像你说的“相对于保证金”选项:) 幸运的是,我不需要在我的UICollectionViewCells中添加约束...目前...这不是一个好习惯,我知道:D Thx – QLag