如何使用滚动条更改NavigationBar和BarButtonItem的颜色

时间:2019-09-15 14:02:50

标签: swift navigationbar

我想在向下滚动TableView的同时平稳地更改此NavigationBar中的UINavigationBar和UIBarButtonItem的背景颜色。我在AirBNB应用程序中看到了这一点,却不知道该如何做。感谢您的帮助

1 个答案:

答案 0 :(得分:0)

  1. 符合UIScrollViewDelegate并确保将tableView / CollectionView委托设置为当前的ViewController。
  2. 实施scrollViewDidScroll(:)方法。
  3. 确定首选偏移量以更改NavigationBarColor。
  4. 如果满足偏移条件,则更改NavigationBarColor。

摘要

Class UIViewController: UIScrollViewDelegate {
    func scrollViewDidScroll(_ scrollView: UIScrollView) {
       let offset = scrollView.contentOffset.y
       if offset > 1 { // Or choose any desired offset
           // TODO:- Change your color for offset greater than 1
       }else {

             // TODO: - Change your nav bar for offset less than 1
       }
   }

}