Swift UIRefreshControl在带有大标题的UINavigation后面呈现

Swift UIRefreshControl在带有大标题的UINavigation后面呈现,swift,uitableview,uinavigationcontroller,uirefreshcontrol,Swift,Uitableview,Uinavigationcontroller,Uirefreshcontrol,我正在尝试创建一个UITableViewController,使用大标题创建一个UINavigationBar 我遇到的问题是,在使用pull刷新空表视图时,加载指示器位于大标题文本的后面 如果我拉刷新第二次它没有这个问题 我附上了一张显示这种行为的gif 我的视图控制器在这一点上非常简单 最终类FeedSceneViewController:UITableViewController{ 私有变量加载器:FeedLoader? 便利初始化(加载程序:FeedLoader){ self.init(

我正在尝试创建一个
UITableViewController
,使用大标题创建一个
UINavigationBar

我遇到的问题是,在使用pull刷新空表视图时,加载指示器位于大标题文本的后面

如果我拉刷新第二次它没有这个问题

我附上了一张显示这种行为的gif

我的视图控制器在这一点上非常简单

最终类FeedSceneViewController:UITableViewController{
私有变量加载器:FeedLoader?
便利初始化(加载程序:FeedLoader){
self.init()
self.loader=loader
}
重写func viewDidLoad(){
super.viewDidLoad()
tableView.refreshControl=.init()
加载()
configureTableView()
configureUI()
}
func load(){
tableView.refreshControl?设置(isRefreshing:true)
loader?.load(然后:{[weak self]u在self?.refreshControl?.set(isRefreshing:false)})
}
}
专用扩展FeedSceneViewController{
func configureTableView(){
tableView.backgroundColor=.usingHex(“fafafa”)
tableView.tableFooterView=.init()
}
func configureUI(){
navigationController?.navigationBar.prefersLargeTitles=true
navigationItem.title=“最新内容”
}
}

在配置了大型导航之后,您似乎正在设置刷新控件

试着把顺序改成这样-

override func viewDidLoad(){
super.viewDidLoad()
加载()
configureTableView()
configureUI()
}
.......
func configureTableView(){
tableView.backgroundColor=.usingHex(“fafafa”)
tableView.tableFooterView=.init()
tableView.contentInsetAdjustmentBehavior=.always
tableView.refreshControl=.init()
}
func configureUI(){
navigationController?.navigationBar.prefersLargeTitles=true
navigationItem.title=“最新内容”
}

在配置了大型导航之后,您似乎正在设置刷新控件

试着把顺序改成这样-

override func viewDidLoad(){
super.viewDidLoad()
加载()
configureTableView()
configureUI()
}
.......
func configureTableView(){
tableView.backgroundColor=.usingHex(“fafafa”)
tableView.tableFooterView=.init()
tableView.contentInsetAdjustmentBehavior=.always
tableView.refreshControl=.init()
}
func configureUI(){
navigationController?.navigationBar.prefersLargeTitles=true
navigationItem.title=“最新内容”
}

也许您可以在viewDidLoad()中尝试此功能


它使您的表视图与导航栏不冲突

也许您可以在viewDidLoad()中尝试

它使您的表视图与导航栏不冲突

self.edgesForExtendedLayout = []