iOS 7:UITableView显示在状态栏下

iOS 7:UITableView显示在状态栏下

我的应用程序的第一个屏幕是UITableViewController没有导航栏,这意味着内容在状态栏下流动,因此存在大量文本冲突。我已经调整了两个属性Under top barsAdjust scroll view insets哪些实际上阻止了它滚动,但代价是保持表视图的顶部。我试图将UITableView帧设置为偏移20像素,但它似乎没有生效,因为我目前需要该应用程序与iOS 6兼容我无法跳转到iOS 7 Storyboards强制自动布局使用顶部高度指南。有没有人找到适用于这两个版本的解决方案?

事情我已经尝试:设置edgesForExtendedLayout,故事情节中更改设置Under top barsAdjust scroll view,迫使帧到一个新的领域。


森林海
浏览 916回答 3
3回答

GCT1015

请注意:这适用于我的以下配置:屏幕顶部没有导航栏(表格视图与状态栏相符)表视图是不可滚动的如果不满足上述两个要求,您的milage可能会有所不同。原帖我以编程方式创建了我的视图,最终为我工作:- (void) viewDidLayoutSubviews {     // only works for iOS 7+     if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) {         CGRect viewBounds = self.view.bounds;         CGFloat topBarOffset = self.topLayoutGuide.length;         // snaps the view under the status bar (iOS 6 style)         viewBounds.origin.y = topBarOffset * -1;         // shrink the bounds of your view to compensate for the offset         viewBounds.size.height = viewBounds.size.height + (topBarOffset * -1);         self.view.bounds = viewBounds;     }}来源(在第39页底部的topLayoutGuide部分)。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

iOS