OGeek|极客世界-中国程序员成长平台

标题: iphone - 带有静态单元格的 UITableViewController : contentSize is {0, 0} [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 15:31
标题: iphone - 带有静态单元格的 UITableViewController : contentSize is {0, 0}

In my project ,我在 UITableView 中添加一个 UIView 并在 contentOffset 时调整 UIView 的框架UITableView 发生变化,因此在 tableView 的内容上方有一个 float View 的错觉。

该库的用户现在报告说,当 UITableView 是使用 通过 Storyboard 的静态单元格创建时,此方法不起作用。

我对此做了一些研究,发现特别是,tableView.contentSize 在您调用 [ 后立即变为 {0, 0} tableView addSubview:...].

显然,这不是动态单元格的问题,但对于静态单元格,contentSize 保持 {0, 0} 直到您调用 [tableView reloadData ]

你知道为什么 UITableView(Controller) 在静态单元格中表现得像这样吗?以及如何在不调用 [tableView reloadData] 的情况下解决此问题的任何想法?



Best Answer-推荐答案


您正在使用 UITableViewController。也就是说 Controller 的view属性是table view,table view添加其他view有点麻烦。

相反,您可以选择以下两种方法之一:您可以将 Controller 转换为普通的 UIViewController,添加一个 TableView 并声明和实现数据源和委托(delegate)方法。然后将您的其他 View 添加到 view 而不是 TableView 。

您也可以尝试将 View 添加到 window。这应该可以,但是如果它应该相对于可见 View ,您可能需要调整定位。

关于iphone - 带有静态单元格的 UITableViewController : contentSize is {0, 0},我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19334603/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4