我正在try 在UIViewController内的UITableView中实现拉入刷新功能.我不能使用UITableViewController,因为我希望UITableView在视图控制器中是一个较小的子视图,上面有一些其他的东西.我认为这是可能的,但有人见过它的实现吗?

推荐答案

将刷新控件直接添加到UITableView,而不使用UITableViewController:

override func viewDidLoad() {
    super.viewDidLoad()
    let refreshControl = UIRefreshControl()
    refreshControl.addTarget(self, action: #selector(refresh(_:)), for: .valueChanged)

    if #available(iOS 10.0, *) {
        tableView.refreshControl = refreshControl
    } else {
        tableView.backgroundView = refreshControl
    }
}

@objc func refresh(_ refreshControl: UIRefreshControl) {
    // Do your job, when done:
    refreshControl.endRefreshing()
}

Ios相关问答推荐

preferredCompactColumn作为NavigationSplitViewColumn.sidebar传递,但仍能在iOS上看到详细信息页面

当包含UITextView的inputAccessoryView显示键盘时,iOS UITableView内容会出现UINavigationBar奇怪的错误

在flutter中使用flatter_screenutil这样的软件包的目的是什么?

如何在 Swift 中存储具有关联值的协议?

iOS Swift 应用程序实例的存活时间

如何链式设置 AttributeContainer 的 UIKit 属性?

如何从单独的视图更改修饰符的值

Flutter 构建 ios 失败:运行 pod 安装时出错

具有线性渐变的 SVG textPath 在 Safari 中损坏

Xcode 13.4.1 (13F100)Command CodeSign 失败,退出代码非零我应该删除哪个证书?

.overlay 和 body 是什么 swift 概念

使用 @MainActor 更新 UI 的适当策略是什么?

向左或向右移动时如何水平翻转sprite?

在iOS7半透明导航栏中获取正确的 colored颜色

如何判断 `NSManagedObject` 是否已被删除?

每次运行后,Xcode 6 都会在 iOS8 模拟器中重命名我的应用程序目录.

Swift tableView 分页

Swift - 获取设备的 WIFI IP 地址

什么是强属性属性

SwiftUI 应用生命周期 iOS14 AppDelegate 代码放哪里?