我已经在我的导航栏中启用了自动
显示模式
的大标题
,这样当用户滚动时,它会收缩。是否有一种方法可以在此过渡发生时得到通知?我没有找到任何委托方法来实现这个功能。我有一个右侧栏按钮项
,其标签很长,我想在大标题收缩时隐藏它,以便标题能够完美居中。显示模式
的大标题
,这样当用户滚动时,它会收缩。是否有一种方法可以在此过渡发生时得到通知?我没有找到任何委托方法来实现这个功能。我有一个右侧栏按钮项
,其标签很长,我想在大标题收缩时隐藏它,以便标题能够完美居中。ScrollViewDelegate
:extension ViewController: UIScrollViewDelegate {
func scrollViewDidScroll(_ scrollView: UIScrollView) {
if let height = navigationController?.navigationBar.frame.size.height, height == 44 {
// handle small title
}
else {
// handle large title
}
}
}
scrollViewDidScroll
会被调用XX次,所以在进行任何更新之前,请检查它们是否已经完成。"最初的回答"
viewDidLayoutSubviews
中检查相同的内容。它的调用频率比scrollViewDidScroll
少一点。 - Starsky