因项目有需求不能让section中的头尾视图滑动,顾根据网上的一些资料和自己整理的思路,已实现了不滑动效果,上代码,啥都说了,搞了2个小时都是泪。。。。

1.创建一个tableview

_mainTableView = [[UITableView alloc]initWithFrame:CGRectMake(, , kScreenWidth, kScreenHeight - ) style:UITableViewStylePlain];//带导航栏-64
_mainTableView.backgroundColor = [UIColor clearColor];
_mainTableView.dataSource = self;
_mainTableView.delegate = self;
_mainTableView.sectionHeaderHeight = ;//headView高
_mainTableView.sectionFooterHeight = ;//footerView高
_mainTableView.contentInset = UIEdgeInsetsMake(, , -, );//加载的时候需要底部视图

2. 实现scrollView代理协议

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
static CGFloat offsetCount = ;
CGFloat sectionHeaderHeight = ;//设置headView和footerView的最大值
CGFloat sectionFooterHeight = ;//设置headView和footerView的最大值
NSLog(@"%f",scrollView.contentOffset.y); if (scrollView.contentOffset.y<sectionHeaderHeight&&scrollView.contentOffset.y>=) {//headerView刚开始的滑动
if (offsetCount >= scrollView.contentOffset.y) {
[scrollView setContentOffset:CGPointMake(, ) animated:YES];
//scrollView.contentInset = UIEdgeInsetsMake(-scrollView.contentOffset.y, 0, -sectionFooterHeight, 0);
}else{ scrollView.contentInset = UIEdgeInsetsMake(-scrollView.contentOffset.y, , -sectionFooterHeight, );
}
}
else if (scrollView.contentOffset.y>=sectionHeaderHeight && scrollView.contentOffset.y + sectionFooterHeight < scrollView.contentSize.height - scrollView.frame.size.height&&scrollView.contentOffset.y>=) {//中间的滑动
scrollView.contentInset = UIEdgeInsetsMake(-sectionHeaderHeight, , -sectionFooterHeight, ); }else if(scrollView.contentOffset.y + sectionFooterHeight >= scrollView.contentSize.height - scrollView.frame.size.height && scrollView.contentOffset.y < scrollView.contentSize.height - scrollView.frame.size.height&&scrollView.contentOffset.y>=){//footerView结束的时候的滑动
scrollView.contentInset = UIEdgeInsetsMake(-sectionHeaderHeight, ,-(scrollView.contentSize.height - scrollView.frame.size.height - scrollView.contentOffset.y) , );
}
offsetCount = scrollView.contentOffset.y;
}

iOS TabeView 头视图和尾视图不滑动的实现的更多相关文章

  1. UICollectionview的头视图和尾视图

    UITableView有头视图和尾视图,那么UICollectionView有没有头视图和尾视图呢? 答案是有的. 1.新建一个类,必须继承自 UICollectionReusableView. 2. ...

  2. Swift自定义头视图和尾视图

    var data: [[String]]! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup a ...

  3. iOS之UITableView组头组尾视图/标题悬停

    最近笔者在公司的iOS开发中,有一个iOS开发同事跑来问了两个问题:1.给UITableView设置了组头和组尾视图,但是一直显示不出来?2.UITableView的section的header和fo ...

  4. IOS开发中UITableView(表视图)的滚动优化及自定义Cell

    IOS开发中UITableView(表视图)的滚动优化及自定义Cell IOS 开发中UITableView是非常常用的一个控件,我们平时在手机上看到的联系人列表,微信好友列表等都是通过UITable ...

  5. iOS系列 基础篇 04 探究视图生命周期

    iOS系列 基础篇 04 探究视图生命周期 视图是应用的一个重要的组成部份,功能的实现与其息息相关,而视图控制器控制着视图,其重要性在整个应用中不言而喻. 以视图的四种状态为基础,我们来系统了解一下视 ...

  6. iOS企业级开发初级课程-表视图(13集)

    首先了解了表视图的组成.表视图类的构成.表视图的分类以及表视图的两个重要协议(委托协议和数据源协议),对表视图有了一个整体上的认识.接下来我们掌握了如何实现简单表视图和分节表视图,以及表视图中索引.搜 ...

  7. 学习方法和阶段介绍 、 iOS界面开发引入 、 构造第一个App 、 视图控制器和视图 、 控件与事件 、 InterfaceBuilder

    1 创建并运行第一个App 1.1 问题 使用Xcode创建一个App项目,该应用实现功能在界面上显示Hello World标签,在模拟器中的运行结果如图-1所示: 图-1 1.2 方案 分析图-1, ...

  8. Xamarin iOS教程之添加和定制视图

    Xamarin iOS教程之添加和定制视图 Xamarin iOS用户界面——视图 在iPhone或者iPad中,用户看到的摸到的都是视图.视图是用户界面的重要组成元素.例如,想要让用户实现文本输入时 ...

  9. iOS - UICollectionView 瀑布流 添加表头视图的坑

    UICollectionView 瀑布流 添加表头视图的坑 首先是,需求加了个头视图在顶部,在collectionView中的头视图跟TableView的不一样,TableView的表头只要设置tab ...

随机推荐

  1. 【.NET】Nuget包,把自己的dll放在云端

    //发布自己的nuget包,1.自己的api KEY,2.自己的类库,3.nuget打包工具https://npe.codeplex.com/releases/view/620126          ...

  2. 1122从业务优化MYSQL

    http://blog.itpub.net/22664653/viewspace-2079576/ 开发反馈一个表的数据大小已经130G,对物理存储空间有影响,且不容易做数据库ddl变更.咨询了开发相 ...

  3. Activity数据传递

    1.在启动界面里通过intent调用方法putExtra添加欲携带数据 2.在被启动界面里通过getIntent方法获取Intent对象 3.通过intent的getXxxExtra方法获取对应的数据

  4. [转]win 10 开始菜单(Win 7风格)增强工具 StartIsBack++ v1.3.4 简体中文特别版

    Windows10开始菜单增强工具StartIsBack++现已更新至v1.3.4,最近主要修复在Win10周年更新版上恢复睡眠后任务栏通知中心按钮消失的问题.升级版对StartIsBack+全新构建 ...

  5. 【BZOJ-3039&1057】玉蟾宫&棋盘制作 悬线法

    3039: 玉蟾宫 Time Limit: 2 Sec  Memory Limit: 128 MBSubmit: 753  Solved: 444[Submit][Status][Discuss] D ...

  6. Google开源库-Volley的使用

    一.什么是Volley? Volley is an HTTP library that makes networking for Android apps easier and most import ...

  7. 对前端的一个H5项目的所思所想

    最近接触一个前端HTML5的项目,虽然我主做iOS,但曾经也徒手用html+css+js+php写过一个博客,当然表示无压力了.结果.现在的前端发展的速度真是快啊,项目中用到Jquery,reactJ ...

  8. php以pdo方式连接sqlserver,无法开启sqlsrv扩展

    首先,PHP连接sqlserver代码如下: $host="aaaaa"; $dbname="aaaaa"; $user="aaaaa"; ...

  9. JavaScript 中对内存的一些了解

    在使用JavaScript进行开发的过程中,了解JavaScript内存机制有助于开发人员能够清晰的认识到自己写的代码在执行的过程中发生过什么,也能够提高项目的代码质量.其实关于内存的文章也有很多,写 ...

  10. Linux/Mac/Shell常用命令

    常用命令 · ls 查看当前目录下的文件 · cd 进入某目录 · cd - 跳转回前一目录 · cd ~ 进入当前用户个人目录 · pwd 输出当前所在路径 · mkdir 新建文件夹 · touc ...