【问题标题】:Refresh Controller with navigationBar that has prefersLargeTitles set to true使用将 prefersLargeTitles 设置为 true 的导航栏刷新控制器
【发布时间】:2017-09-26 20:05:45
【问题描述】:

我正在使用导航控制器,在该导航控制器中,我有一个带有 tableview 的 VC,它拥抱 superView 的顶部、底部、左侧和右侧。当我将self.navigationController?.navigationBar.prefersLargeTitles 设置为false 时,一切正常。但是当我将它设置为true 时,我必须将其拖得很远才能让我的刷新控制器触发刷新。我必须向下拖动,以至于我必须用两根手指在屏幕上向下拖动。我在这里做错了什么还是Apple有问题?这是我添加刷新控制器的方法。我没有包含 handleRefresh 函数,因为代码甚至没有达到那个点。

var refreshControl = UIRefreshControl()

override func viewDidLoad() {
    super.viewDidLoad()
    refreshControl.addTarget(self, action: 
    #selector(FeedViewController.handleRefresh(_:)), for: UIControlEvents.valueChanged)
    refreshControl.tintColor = UIColor.gray
    self.tableView.refreshControl = refreshControl
}

我正在使用带有 Xcode 9 的 swift 4 和 iOS 11。我的 tableview 中的单元格很大 - 一个单元格大约 400-500 点,几乎是屏幕的大小。

发生的情况是,动画师开始制作动画,但是当它达到某个特定值(应该刷新的点)时,它就停止了。我已经包含了它停止点的屏幕截图。然后,当我继续向下滚动时,它会刷新。但它应该更早地完成它。我必须向下滚动到导航栏几乎延伸到整个屏幕长度的位置。

【问题讨论】:

    标签: ios swift ios11 swift4


    【解决方案1】:
    self.tableView.addSubview(refresh)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-02
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多