滾動cell 顯示隱藏導航欄

梵塵yst發表於2017-12-11

  demo:https://github.com/YST521/HiddenNa.git

關於滾動cell 顯示或者隱藏導航欄主要是根據scroll滑動拿到豎直方向的 滾動距離,通過距離判斷是否隱藏顯示隱藏 導航欄。

這個一般可以用於 UIScrollerView和tabView.

本demo 是隱藏原有的導航欄 ,通過自定義一個View 代替原有的導航欄。通過縱向滾動的距離 漸變顯示隱藏導航欄。

//這是最開始無導航欄狀態



 這是向上滑動一定距離顯示導航欄。



當然 ,如果頁面一顯示就展示導航欄,滑動就隱藏。道理也一樣 通過 

-(void)scrollViewDidScroll:(UIScrollView *)scrollView;獲取

scrollView.contentOffset.y;

根據這個值判斷是否隱藏或者顯示

//這個是一開始隱藏 到一定距離顯示。當需要一開始顯示 ,滾動在隱藏 調換下面if else就可以實現。


-(void)scrollViewDidScroll:(UIScrollView *)scrollView{

    

    int contentOffsety = scrollView.contentOffset.y;

    //170 上拉距離 顯示title

    if (scrollView.contentOffset.y<=170) {

        self.NavView.headBackView.alpha = scrollView.contentOffset.y/170;


        self.NavView.color = [UIColor whiteColor];

//改變狀態列字型顏色

        [[UIApplication sharedApplication]setStatusBarStyle:UIStatusBarStyleLightContent animated:YES];

    }else{

        self.NavView.headBackView.alpha = 1;


        self.NavView.color = kColor(87, 173, 104, 1);

        [[UIApplication sharedApplication]setStatusBarStyle:UIStatusBarStyleDefault animated:YES];

    }


    

}



相關文章