作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个简单的聊天界面,从服务器收到的最新消息显示为表格的最后一行,我需要滚动到此行以向用户显示消息。但是,我有一个 AccessoryView,用于输入新消息。
当我调用scrollToRow(at:index)时,屏幕滚动到最后一行,但它不会偏移内容来满足accessoryView的需求 - 即使tableview连接到accessory View 的顶部。
有什么想法可以解决这个问题吗?我的accessoryView是固定高度的,所以也许我可以设置一个tableview偏移来覆盖它,但想要一个更优雅的解决方案。
最佳答案
找到了解决方案。如果将scrollToRow调用延迟一小段时间(比呈现accessoryView所需的时间稍长),滚动就会起作用。使用 0.3 秒的值是不够的,但使用 0.6 秒就可以完美地工作。
DispatchQueue.main.asyncAfter(deadline: .now() + 0.6) {
self.tableView?.scrollToRow(at: pathToLastRow, at: .bottom, animated: animated)
}
关于ios - 在 UITableView 上调用scrollToRow 不适用于 AccessoryView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46099492/
我是一名优秀的程序员,十分优秀!