uitableview - UIRefreshControl 在 uitableview 中重叠 headerview

标签 uitableview uiviewcontroller uirefreshcontrol

我在我的 UIViewController 中有一个 UITableView 并且已经添加了一个 UIRefreshControl:

lazy var refreshControl: UIRefreshControl = {
    let refreshControl = UIRefreshControl()
    refreshControl.addTarget(self, action: #selector(ListViewController.handleRefresh), for: UIControlEvents.valueChanged)

    return refreshControl
}()

 override func viewDidLoad() {
        super.viewDidLoad()
        self.tableView.addSubview(self.refreshControl)
 }

它工作正常,但在与标题 View 重叠的地方会产生令人讨厌的 UI 效果。

enter image description here

我已经尝试设置 frame heightcontentInset 但都不起作用。

最佳答案

我发现我必须延迟 UIRefreshControl 关闭才能使 UI 正常运行。

这对我来说可能非常独特,但我发布它以防万一。

let when = DispatchTime.now() + 0.5 // change to desired number of seconds
DispatchQueue.main.asyncAfter(deadline: when) {
     refreshControl.endRefreshing()
} 

关于uitableview - UIRefreshControl 在 uitableview 中重叠 headerview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42950676/

相关文章:

ios - UITableView 不使用 UISearchBar 滚动

ios - UITableViewCell AccessoryType.Checkmark 仅在点击另一行时显示复选标记

ios - 使用未链接的 View Controller 的选项卡栏实例化 View Controller

ios - 从另一个 UIViewController Swift iOS 中删除一个 View Controller

ios - 带有 UISearchBar 的奇怪行为 UIRefreshControl

uitableview - 选择一个TableView Cell后,在Swift中将数据回传给之前的View Controller

objective-c - 使用self.tableview reloadData崩溃的应用程序

ios - UIScrollViews 在离开 View 和返回时不同步

ios - 带 UIRefreshControl 的水平 UICollectionView

ios - Swift UIRefreshControl 不适用于 iPhone 8