Pau*_*nho 31 objective-c uiview tableview ios ios7
我尝试移植我的应用程序iOS7,但我的自定义TableViewController显示在下面的最后一行(单元格)TabBar:(
我正在寻找它,但我没有找到任何解决方案.谁能帮我?
该错误显示在打击屏幕截图中(仅显示最后一个产品的一部分,因为我正在向上展示以显示标签栏下的隐藏产品):

谢谢.
Jos*_*vio 34
我有同样的问题,并使用故事板解决了它.在Tab Bar Controller中,转到属性检查器,Simulated Metrics,然后将Bottom Bar设置为Opaque Tab Bar.而已!有关说明,请参见下图.

Saudações!(问候!)
Woj*_*tek 31
我在另一篇文章中找到了你的问题的答案,由dariaa回答,在这里:
它对我很有用.
请不要相信我,因为我不是解决它的原始人.
在自定义TableViewController中,在[super viewDidLoad]下添加这两行:
- (void)viewDidLoad
{
[super viewDidLoad];
self.edgesForExtendedLayout = UIRectEdgeAll;
self.tableView.contentInset = UIEdgeInsetsMake(0., 0., CGRectGetHeight(self.tabBarController.tabBar.frame), 0);
}
Run Code Online (Sandbox Code Playgroud)
An *_* Se 10
我的朋友们,我不能告诉你我是多么挣扎.没有一个故事板的重新配置从来没有帮助过我.问题与原帖一样,我已设法使用以下方法修复它:
对于斯威夫特3
self.edgesForExtendedLayout = []
Run Code Online (Sandbox Code Playgroud)
对于objective-c
self.edgesForExtendedLayout = NO;
Run Code Online (Sandbox Code Playgroud)
2线viewDidLoad,就是这样!
self.edgesForExtendedLayout = UIRectEdgeAll;
self.tableview.contentInset = UIEdgeInsetsMake(0.0f, 0.0f, CGRectGetHeight(self.tabBarController.tabBar.frame), 0.0f);
Run Code Online (Sandbox Code Playgroud)
在iOS 7中,viewController使用全高.有一个属性介绍为
self.automaticallyAdjustsScrollViewInsets = NO;
Run Code Online (Sandbox Code Playgroud)
把它设为否.然后检查,或设置UIEdgeInset如果没有在它之后设置.
UIEdgeInsetsMake(top, left, bottom, right)
Run Code Online (Sandbox Code Playgroud)
编辑:也尝试这个
self.edgesForExtendedLayout = UIRectEdgeNone;
Run Code Online (Sandbox Code Playgroud)
这个问题的根本原因automaticallyAdjustsScrollViewInsets是只对First有效 VC的视图层次结构中滚动视图.Apple没有记录它,但它是VC检测需要修改的滚动视图的唯一方法,除非您使用的是UITableViewController.
因此,为了在不手动调整insets的情况下修复问题,请执行以下操作:
| 归档时间: |
|
| 查看次数: |
26785 次 |
| 最近记录: |