最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

scrollview tableView嵌套解決方案示例

 更新時(shí)間:2022年08月31日 14:08:31   作者:biyuhuaping  
這篇文章主要介紹了scrollview tableView嵌套解決方案示例的代碼,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

正文

在網(wǎng)上找了很多,沒有喜歡的方案。也參考了眾多設(shè)計(jì),做了一款自認(rèn)為比較簡(jiǎn)潔、完美的方案:

大致思路:外層放置scrollview作為容器,容器內(nèi)上部分topView,下部分tableView。當(dāng)tableView滾動(dòng)時(shí),如果topView還在展示區(qū)域,就設(shè)置topView的y坐標(biāo),讓topView跟隨同步上移。

(注意:如果不設(shè)置tableView的headerView,tableView、和topView都會(huì)同時(shí)上移不是我想要的效果,所以設(shè)置tableView的headerView高度包括topView的高度,達(dá)到了完美的效果,具體實(shí)現(xiàn)看demo)

效果預(yù)覽:

NestScrollView.gif

核心代碼就是在父視圖、子試圖的滾動(dòng)判斷

//父視圖滾動(dòng)的回調(diào),用于橫向滾動(dòng)判斷

//父視圖滾動(dòng)的回調(diào),用于橫向滾動(dòng)判斷
- (void)scrollViewDidScroll:(UIScrollView *)scrollView{    
    CGFloat placeholderOffset = 0;
    if (self.topView.selectedIndex == 0) {
        if (self.firstTableView.contentOffset.y > CGRectGetHeight(self.topView.frame) - kItemheight) {
            placeholderOffset = CGRectGetHeight(self.topView.frame) - kItemheight;
        }else {
            placeholderOffset = self.firstTableView.contentOffset.y;
        }
        [self.secondTableView setContentOffset:CGPointMake(0, placeholderOffset) animated:NO];
    }else {
        if (self.secondTableView.contentOffset.y > CGRectGetHeight(self.topView.frame) - kItemheight) {
            placeholderOffset = CGRectGetHeight(self.topView.frame) - kItemheight;
        }else {
            placeholderOffset = self.secondTableView.contentOffset.y;
        }
        [self.firstTableView setContentOffset:CGPointMake(0, placeholderOffset) animated:NO];
    }
}

//子視圖滾動(dòng)的回調(diào),用于豎直方向上滾動(dòng)判斷

//子視圖滾動(dòng)的回調(diào),用于豎直方向上滾動(dòng)判斷
- (void)updateTopViewFrame:(UIScrollView *)scrollView{
    CGFloat placeHolderHeight = CGRectGetHeight(self.topView.frame) - self.topView.itemHeight;
    CGFloat offsetY = scrollView.contentOffset.y;
    CGFloat y = 0.0;
    if (offsetY >= 0 && (offsetY <= placeHolderHeight)) {
        y = -offsetY;
    } else if (offsetY > placeHolderHeight) {
        y = -placeHolderHeight;
    } else if (offsetY < 0) {
        y = -offsetY;
    }
    [self.topView mas_updateConstraints:^(MASConstraintMaker *make) {
        make.top.offset(y + kNavBarHeight);
    }];
}

githut demo下載地址:https://github.com/biyuhuaping/NestScrollView

以上就是scrollview tableView嵌套解決方案示例的詳細(xì)內(nèi)容,更多關(guān)于scrollview tableView嵌套的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • iOS開發(fā)避免安全隱患的要點(diǎn)總結(jié)

    iOS開發(fā)避免安全隱患的要點(diǎn)總結(jié)

    在本篇文章里小編給各位整理了關(guān)于iOS開發(fā)如何避免安全隱患的知識(shí)點(diǎn)總結(jié),需要的朋友們學(xué)習(xí)下。
    2019-07-07
  • IOS開發(fā)中禁止NavigationController的向右滑動(dòng)返回

    IOS開發(fā)中禁止NavigationController的向右滑動(dòng)返回

    這篇文章主要介紹了IOS開發(fā)中禁止NavigationController的向右滑動(dòng)返回的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • iOS自定義UITabBar仿今日頭條效果

    iOS自定義UITabBar仿今日頭條效果

    這篇文章主要為大家詳細(xì)介紹了iOS自定義UITabBar仿今日頭條效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • iOS Label隨字自動(dòng)變大效果

    iOS Label隨字自動(dòng)變大效果

    這篇文章主要為大家詳細(xì)介紹了iOS Label隨字自動(dòng)變大效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • NSMutable?對(duì)象的坑解決分析

    NSMutable?對(duì)象的坑解決分析

    這篇文章主要為大家介紹了NSMutable?對(duì)象的坑解決分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-02-02
  • 2016年iOS公開可利用漏洞總結(jié)

    2016年iOS公開可利用漏洞總結(jié)

    本文總結(jié)了2016年比較嚴(yán)重的iOS漏洞(可用于遠(yuǎn)程代碼執(zhí)行或越獄),希望能夠?qū)Υ蠹乙苿?dòng)安全方面的工作和研究帶來一些幫助。
    2016-12-12
  • iOS實(shí)現(xiàn)獲取系統(tǒng)iTunes音樂的方法示例

    iOS實(shí)現(xiàn)獲取系統(tǒng)iTunes音樂的方法示例

    這篇文章主要給大家介紹了關(guān)于iOS如何實(shí)現(xiàn)獲取系統(tǒng)iTunes音樂的相關(guān)資料,文中通過示例代碼給大家詳細(xì)介紹了實(shí)現(xiàn)的方法,并給大家介紹了MPMediaPickerController的相關(guān)知識(shí),對(duì)大家的學(xué)習(xí)或者工作具有一定的幫助,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11
  • iOS 圖片裁剪 + 旋轉(zhuǎn)

    iOS 圖片裁剪 + 旋轉(zhuǎn)

    之前分別介紹了圖片裁剪和圖片旋轉(zhuǎn)的方法,裁剪和旋轉(zhuǎn)是可以連在一起執(zhí)行的。本文將對(duì)此進(jìn)行介紹,具有很好的參考價(jià)值。下面跟著小編一起來看下吧
    2017-03-03
  • iOS 泛型中nullable、null resettable、null kindof 用法詳解

    iOS 泛型中nullable、null resettable、null kindof 用法詳解

    這篇文章主要介紹了iOS 泛型中nullable、null resettable、null kindof 用法詳解的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2016-09-09
  • iOS如何獲取屏幕寬高、設(shè)備型號(hào)、系統(tǒng)版本信息

    iOS如何獲取屏幕寬高、設(shè)備型號(hào)、系統(tǒng)版本信息

    這篇文章主要介紹了iOS如何獲取屏幕寬高、設(shè)備型號(hào)、系統(tǒng)版本信息的相關(guān)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-11-11

最新評(píng)論

河北区| 彭州市| 胶州市| 灌阳县| 旅游| 上高县| 安多县| 三亚市| 宽城| 漳浦县| 凤冈县| 中山市| 清新县| 宁海县| 南乐县| 岚皋县| 汕尾市| 昌邑市| 赞皇县| 陆川县| 姜堰市| 开封县| 苗栗县| 葫芦岛市| 辽中县| 松桃| 成安县| 五寨县| 手游| 莱西市| 朝阳县| 贵溪市| 隆尧县| 常德市| 海伦市| 盘山县| 宁城县| 石狮市| 侯马市| 农安县| 安化县|