【问题标题】:UIRefreshControl can’t be disabledUIRefreshControl 不能被禁用
【发布时间】:2020-08-16 22:00:05
【问题描述】:

我在情节提要中有一个 UITableViewController。我已经使用界面生成器启用了拉动刷新属性。 我想根据请求以编程方式禁用并重新启用拉动刷新功能。

UIRefreshControl 继承自具有 isEnabled 属性的 UIControl。

将此属性设置为 false 绝不会禁用它,也不会将 isUserInteractionEnabled 设置为 false。

我可以实现我想要的唯一方法是将刷新控件设置为 nil 然后重新创建它,但我仍然不明白为什么我不能将它的 isEnabled 值设置为 false?

我错过了什么吗?

【问题讨论】:

    标签: ios swift uitableview uirefreshcontrol uicontrol


    【解决方案1】:

    UIRefreshControl 继承自 UIControl 是正确的,但 isEnabled = false 会禁用触摸事件。所以“禁用” UIRefreshControl 的唯一方法是将其设置为nil

    【讨论】:

    • 但是为什么仅仅禁用触摸事件不足以“关闭它”呢?这正是我要问的......
    • 因为这不是触摸事件,所以这是“拉动刷新”,响应拉动刷新的选择器例如是 .valueChanged 而不是 touchUpInside。
    • 有趣。我建议您将此事实添加到答案本身中,以便将来的观众更清楚。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-01
    • 1970-01-01
    • 2015-06-06
    • 2017-07-22
    • 1970-01-01
    • 2014-03-31
    相关资源
    最近更新 更多