iOS 10中不允许使用UITableViewCell高度> = 2048?

时间:2016-09-29 14:35:16

标签: ios10

我正在开发一个需要相当大的UITableViewCell s(其中包含大块文本)的项目。在iOS 9中,如果这些单元格超过2048的高度则不成问题。但是,iOS 10似乎不太宽容。每当一个单元格到达那个高度时,UITableView要么呈现不正确,要么以其他方式出现故障(例如没有滚动)。

我发现这可以在一个简单的项目中重现。首先,创建一个显示单个(动态)UIViewController的<{1}}:

UITableViewCell

然后,使用包含单个class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate { @IBOutlet weak var tableView: UITableView! override func viewDidLoad() { super.viewDidLoad() self.tableView.estimatedRowHeight = 44.0 self.tableView.rowHeight = UITableViewAutomaticDimension } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. } func numberOfSections(in tableView: UITableView) -> Int { return 1 } func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return 1 } func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { let cell = tableView.dequeueReusableCell(withIdentifier: "ExampleCell", for: indexPath) cell.textLabel?.text = "Content" return cell } } 的原型单元创建一个UITableView,其中包含5个约束:top(0),left(0),right(0),height(2048),bottom( 0)(底部优先级较低)。由于缺乏声誉,我似乎无法发布图片,因此可以在此处找到UIView设置的图片:http://i.imgur.com/nGF8vQI.png

可以在此处看到相同设置的并排,高度为2047 vs 2048:http://imgur.com/a/amxqp 具有高度为2048的单元格的UITableView实际上没有那个高度;一旦向下滚动,UITableView松紧带就会向上移动。 2047(或更少)版本按预期工作。

这种行为是苹果公司的故意,还是其他不妥之处?

0 个答案:

没有答案