iOS tableView中section的headerView的位置


大家都知道當tableView得style是plain的時候,設置section的頭視圖會有個卡在navBar下面的效果

但是實際開發中tablView的中的屬性發生改變的時候回這樣

我當時就想這玩意怎么就卡不住了呢,然后看了看視圖的層次關系發現其實是,section的位置發生了改變

只要它在就好辦了

在- (void)scrollViewDidScroll:(UIScrollView *)scrollView;方法中判斷

    
//    該方法是當scrollView滑動時觸發,因為UITableView繼承自UIScrollView因此在這里也可以調用
    CGFloat header = 50;//這個header其實是section1 的header到頂部的距離
    if (scrollView.contentOffset.y<=header&&scrollView.contentOffset.y>=0) {
        //當視圖滑動的距離小於header時
        scrollView.contentInset = UIEdgeInsetsMake(64, 0, 0, 0);
    }else if(scrollView.contentOffset.y>header)
    {
        //當視圖滑動的距離大於header時,這里就可以設置section1的header的位置啦,設置的時候要考慮到導航欄的透明對滾動視圖的影響
        scrollView.contentInset = UIEdgeInsetsMake(header*0.5+103, 0, 0, 0);
    }

具體數值位置自己算。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM