我有一个UITableView,其框架设置为父视图的框架大小。表格视图在iPhone上看起来很好。但是,在iPad上,其两边都有很大的空白。
如果选择该单元格,则表明表格确实覆盖了整个宽度。但是,分隔符似乎较小。我尝试将layoutMargins设置为零,但没有任何效果。这是将其添加到视图中的方法:
self.optionsView = UITableView()
self.optionsView.delegate = self
self.optionsView.dataSource = self
self.optionsView.hidden = true
self.optionsView.frame.origin = CGPoint(x: view.frame.size.width + 30, y: 0)
self.optionsView.frame.size = view.frame.size
self.optionsView.layer.shadowColor = Palette.shadowColor.CGColor
self.optionsView.layer.shadowRadius = 10.0
self.optionsView.layer.shadowOpacity = 0.3
self.optionsView.clipsToBounds = false
view.addSubview(optionsView)
知道这里出了什么问题吗?
最佳答案
这里是:
tableView.cellLayoutMarginsFollowReadableWidth = false
从Apple Docs:
CellLayoutMarginsFollowReadableWidth :
一个布尔值,指示是否导出像元边界
从可读内容指南的宽度开始。
什么是可读内容指南:
布局指南,表示区域内具有可读宽度的区域
视图。
讨论:
该布局指南定义了一个易于阅读的区域,而无需
迫使用户移动其头部以跟踪线条。可读性
内容区域遵循以下规则:
易读的内容指南绝不会超出视图的布局
保证金指南。
可读内容指南在版式内部垂直居中
保证金指南。
可读内容指南的宽度等于或小于
为当前动态文本大小定义的可读宽度。
使用可读的内容指南来布置单列文本。如果
您要布置多列,可以使用指南的宽度
确定您的列的最佳宽度。
结论:
Apple决定默认情况下将使用其动态文本引擎,并且表视图上仅使用一列。如果您不在这种情况下,则可能应关闭此属性。如果您想知道可读宽度的值,可以这样获得:
tableView.visibleContentGuide.layoutFrame.width
关于ios - UITableView分隔符在iPad的两边都有边距,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33578983/