从 iOS 13 中的呈现模式拉动以刷新表格视图不起作用

Posted

技术标签:

【中文标题】从 iOS 13 中的呈现模式拉动以刷新表格视图不起作用【英文标题】:pull to refresh in tableview from presenting modal in iOS 13 not working 【发布时间】:2019-09-29 16:45:20 【问题描述】:

我在 tableview 中使用了 UIRefreshControl,它在 ios 13 中自动显示了视图控制器。使用同一视图控制器中的 tableview。

vc.modalPresentationStyle = .automatic

问题是,只要在视图控制器顶部滑动刷新它就会关闭。 我已经阻止了以下代码的关闭,但视图控制器仍然没有从顶部刷新。

vc.isModalInPresentation = true

如何在不关闭视图控制器的情况下刷新 tableview?

【问题讨论】:

尝试全屏显示而不是自动显示。 【参考方案1】:

如果iOS版本是10以后,使用tableView的RefreshControl,不要使用addSubview。

let refreshControl:UIRefreshControl = UIRefreshControl.init()

if #available(iOS 10.0, *) 
   tableView.refreshControl = refreshControl
 else 
   tableView.addSubview(refreshControl)

无论 isModalInPresentation 是真还是假。

【讨论】:

以上是关于从 iOS 13 中的呈现模式拉动以刷新表格视图不起作用的主要内容,如果未能解决你的问题,请参考以下文章

是否可以在没有表格视图的情况下创建拉动刷新?

拉动以刷新 tableviewcontroller 负载

UIScrollViewDelegate 中的委托方法不响应表格视图滚动事件

拉动刷新时旋转图像

JQuery Mobile:拉动以刷新列表视图[重复]

一段时间后结束表格视图的刷新