问题描述:设置项适配iOS9的时候发现UITableView的所有在iPad横屏下两边着很大的空白,如下图
问题分析:
1.用UI视图看了下。UITableViewCell撑满整个屏幕是正确的。UITableViewCell的ContentView也是正确的。TextLabel不正确,你只能通过强行给TextLabel一个约束来修正。
2.设置了所有有关间距的属性,代码如下:
cell.indentationLevel=0;
cell.indentationWidth=0;
cell.separatorInset=UIEdgeInsetsZero;
cell.layoutMargins=UIEdgeInsetsZero;
cell.contentView.preservesSuperviewLayoutMargins=NO;
cell.preservesSuperviewLayoutMargins=NO;
tableView.contentInset=UIEdgeInsetsZero;
tableView.scrollIndicatorInsets=UIEdgeInsetsZero;
tableView.separatorInset=UIEdgeInsetsZero;
tableView.layoutMargins=UIEdgeInsetsZero;
[cell setNeedsLayout];
[cell setNeedsDisplay];
[cell layoutIfNeeded];
[tableView setNeedsLayout];
[tableView setNeedsDisplay];
[tableView layoutIfNeeded];
3.以上代码无效后,单独做了一个Demo:只放一个UITableView进去,问题同样存在,如下
TableViewDemo
问题结论:
估计是iOS9 beta2的bug
环境:iPad Air2,iOS9 beta2,Xcode7.0 beta (7A120f)