你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> iOS UITableView表視圖滾動隱藏UINavigationController導航欄

iOS UITableView表視圖滾動隱藏UINavigationController導航欄

編輯:IOS開發綜合

UITableView 繼承於UIScrollView
所以UIScrollView 的代理方法同樣適用於UITableView 中
隱藏導航欄的方法為:

self.navigationController.navigationBar.hidden = YES;

所以我們只有通過滾動的代理方法監測滾動視圖的滾動方向來控制導航欄顯示還是隱藏即可:
通過實現UIScrollView的代理方法來操作:
方式如下:

// 滑動scrollView,並且手指離開時執行。一次有效滑動,只執行一次。
// 當pagingEnabled屬性為YES時,不調用,該方法
-(void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
{

    NSLog(@%f,velocity.y);
    if (velocity.y > 0.0)
    {
        //向上滑動隱藏導航欄
        self.navigationController.navigationBar.hidden = YES;
    }else
    {
        //向下滑動顯示導航欄
        self.navigationController.navigationBar.hidden = NO;
    }
}

如果覺得效果僵硬,可自行加載動畫效果!
關於 UIScrollView Delegate 的詳解可到此查看: iOS UIScrollViewDelegate詳解

 

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved