我正在尝试将我的应用程序移植到 iOS7,但我的 TableView 的高度在 ios 7 中增加,而在 ios 6 中是正确的。由于最后一行(单元格)几乎是标签栏下方的一半。

我搜索了很多,但我没有找到任何解决方案。谁能帮我?

最佳答案

看看 iOS 7 UI Transition Guide

if ([self respondsToSelector:@selector(edgesForExtendedLayout)]) {
    self.edgesForExtendedLayout = UIRectEdgeNone;
}

使用 edgesForExtendedLayout 指定应扩展 View 的哪些边缘,而不管条形半透明度如何。默认情况下,此属性的值为 UIRectEdgeAll
if ([self respondsToSelector:@selector(extendedLayoutIncludesOpaqueBars)]) {
    self.extendedLayoutIncludesOpaqueBars = NO;
}

如果您的设计使用不透明条,请同时将 edgesForExtendedLayout 属性设置为 extendedLayoutIncludesOpaqueBars 来优化 NO
if ([self respondsToSelector:@selector(automaticallyAdjustsScrollViewInsets)]) {
    self.automaticallyAdjustsScrollViewInsets = NO;
}

如果您不想自动调整ScrollView的内容插入,请将 automaticallyAdjustsScrollViewInsets 设置为 NO

您还可以设置 topLayoutGuidebottomLayoutGuide 。它们指示 View Controller View 中顶部或底部栏边缘的位置。如果条形图应该与 View 的顶部或底部重叠,您可以使用 Interface Builder 通过在 topLayoutGuide 底部或 bottomLayoutGuide 顶部创建约束来相对于条形图定位 View 。

此外,您还可以在界面构建器中进行调整。

如果您不使用自动布局,您可以为 iOS6/7 设置增量。

关于iOS 7 TableView 的高度在 TabBar 下增加,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22878985/

10-13 04:02