我已将headerView附加到UITableView。而且我也想使用pull来刷新tableview。 我已使用以下代码将headerview附加到tableview:
tblView.tableHeaderView = headerView
并使用redresh controll作为:
var refreshControl: UIRefreshControl!
refreshControl = UIRefreshControl()
refreshControl.attributedTitle = NSAttributedString(string: "Pull to refresh")
refreshControl.addTarget(self, action: #selector(self.refresh(_:)), forControlEvents: UIControlEvents.ValueChanged)
let tableController = UITableViewController()
self.addChildViewController(tableController)
tableController.tableView = self.tblView
tableController.refreshControl = self.refreshControl
现在问题是当我拉下tableview refreshcontrol显示但我的标题视图位置也随着弹跳效果而变化。我拉下来时我不想改变标题位置我想在标题视图下显示refreshcontrol。 我的标题视图和refreshcontrol显示在屏幕截图中。我希望标题视图的位置静态与导航栏连接,但是当用户向上滚动标题视图时也必须滚动。
答案 0 :(得分:3)
1)在uiviewcontroller中添加标题视图而不是tableview的标题视图,
2)你可以改变tableView contentoffset的headerframe一致scrollView,它有点复杂
3)github.com/CoderJackyHuang/StickyUpDownDemo这个演示你可以学习如何解决你的问题