我在 UITableView
的底部添加了一个 View (或 UICollextionView
)但不是作为单元格或页脚,而只是将其添加到表格 View 本身(因此,添加到 UIScrollView
),然后使用 contentInset
的卷轴。这样做的目的是将 View 保持在表格内容的底部,而不是在内容的末尾。这样,如果内容短于表格的边界,则 View 可见(左图),但如果内容较高,则 View 显示在内容的末尾(右图)。
这是代码的摘录:
let yCoord = collectionView.contentSize.height >= view.frame.height - viewHeight
? collectionView.contentSize.height
: view.frame.height - viewHeight
let bottomView = UIView(frame: CGRect(x: 0, y: yCoord, width: collectionView.contentSize.width, height: viewHeight))
collectionView.contentInset = UIEdgeInsets(top: 0, left: 0, bottom: viewHeight, right: 0)
collectionView.addSubview(bottomView)
我想知道这种方法是否可以以任何方式被认为是有害的,例如,AL、旋转、重新加载表的问题......我没有发现任何问题,实际上这是一种非常类似于拉动的方法- iOS 6 之前的 to-refresh 功能,但我宁愿在将其投入生产之前确定它。
如果这可以被认为是一个问题,除了添加一个新单元格之外,您还提出了哪种解决方案?
最佳答案
如果您想要上述功能,您必须在 scrollView 中获取 tableView 和底部 View ,并使用内容观察器根据内容为 tableView 提供动态高度,并将底部 View 保持在 ScrollView 的底部,并将 tableView 作为从上到下的 View 并给出大于或与归属相同。
希望它会奏效。
关于ios - 使用 insets 向 UITableView 添加 View ,有什么问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54303801/