文档章节

[10秒学会] - iOS tableView中headView和footView悬停方式

赵大财
 赵大财
发布于 2016/05/12 17:13
字数 263
阅读 1147
收藏 2

效果图头部悬停 底部不悬停

一共4种

一: 2个都悬停 UITableViewStylePlain  //没什么好疑问的
二:2个都不悬停 UITableViewStyleGrouped //也没啥好疑问的
三:头部不悬停 底部悬停 使用UITableViewStylePlain //网上已经很多这个代码 还是贴一下吧

-(void)scrollViewDidScroll:(UIScrollView *)scrollView {  
//    if (scrollView == self.myTableView)  
    {  
        //YOUR_HEIGHT 为最高的那个headerView的高度  
//        CGFloat sectionHeaderHeight = 20;  
        if (scrollView.contentOffset.y<=sectionHeaderHeight&&scrollView.contentOffset.y>=0) {  
            scrollView.contentInset = UIEdgeInsetsMake(-scrollView.contentOffset.y, 0, 0, 0);  
        } else if (scrollView.contentOffset.y>=sectionHeaderHeight) {  
            scrollView.contentInset = UIEdgeInsetsMake(-sectionHeaderHeight, 0, 0, 0);  
        }  
    }  
} 

四 才是今天我们的重点 头部悬停 底部不悬停
 

    self.tableView.contentInset = UIEdgeInsetsMake(0, 0, -105, 0); //首先改变内边距 -105是底部的距离
    CGRect rectInTableView = [self.tableView rectForRowAtIndexPath:[NSIndexPath indexPathForRow:5 inSection:2]]; //现在是写死的 你可以根据模型数据 写成变量
    CGRect rect = [self.tableView convertRect:rectInTableView toView:[self.tableView superview]];//这是是最后cell row的高度
    if(rect.origin.y<=-1288){ //-1288  这个位置 是可以根据你的位置调整出来
        self.tableView.contentInset = UIEdgeInsetsMake(0, 0, 0, 0);
    }else{
        self.tableView.contentInset = UIEdgeInsetsMake(0, 0, -105, 0);
    }

 

© 著作权归作者所有

共有 人打赏支持
赵大财
粉丝 21
博文 162
码字总数 38743
作品 0
长沙
iOS 11 安全区域适配总结

导语:本文主要是对iOS 11下APP中内容下移20pt或下移64pt的问题适配的一个总结。内容包括五个部分:问题的原因分析、属性的计算方式、什么情况下的会发生内容下移、有哪些解决方法、解决这个...

Daniel_s
2017/11/03
0
0
Titanium UI之TableViews组件

TableViews 1、为tableView增加数据 2、Row的属性 3、自定义Row,Row组,Row Section 4、在TableView的搜索 5、TableView的事件 内容 Ti里面创建一个TableView,如下: 这是其包含的属性: ...

lifer
2012/11/02
0
0
iO6 Programming pushing the limits 阅读笔记

目录 第一部分 iOS6新内容 第二部分 从每天工具中获取更多(介绍日常使用控件和框架的潜力) 第三部分 完成任务的正确工具(介绍不是那么常用的控件和框架) 第四部分 发挥到极限(深入理解i...

云飞扬v5
2015/11/09
0
0
那些在学习iOS开发前就应该知道的事(part 1)

英文原文:Things I wish I had known before starting iOS development—Part 1 设计师设计出来了一个不错的引导界面,然而当我看到设计稿的时候,我们的app也没几天就要上线了。这个界面模...

TomatosX
2015/06/12
0
0
IOS 不能触发didSelectRowAtIndexPath事件

IOS 不能触发didSelectRowAtIndexPath事件. delegate 没有设置。 可能tableview被其他控件覆盖。 手势与tableview点击事件冲突,有些IOS版本只能触发手势,有些需要长按才能触发didSelectRo...

LoveCupid
2014/02/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Minifilter的动态安装、加载及卸载

MINIFILTER框架的文件系统过滤驱动,无法使用的CreateService和OpenService进行动态加载。 看了一下,使用Inf文件安装Minifilter驱动的方式是在注册表驱动服务项下比传统驱动多创建了Instanc...

simpower
24分钟前
1
0
idea新建springCloud项目(6)- Config Server使用

1.在IDEA新建springCloud项目-Config Server 修改版本,和之前建的eureka项目版本一致,修改完记得刷新: 删除掉不需要的文件: 2.把Config S 服务注册到eureka上去,配置git地址,启动项目 ...

monroeCode
29分钟前
3
0
大数据可视化项目开发总纲

第1章 开发文档总纲 1.1 开发工具清单 名称 版本 备注 Pentaho-bi server pentaho-server-ce-7.1 Pentaho Cde为其内置工具 Pentaho-prd pentaho-prd-ce-7.1 Pentaho Report Designer报表工具...

ZhangLG
30分钟前
2
0
pip安装超时问题

pip3 install --default-timeout=100 tensorflow 设置为100秒 参考: User Guide How to solve ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org', port=443) with pip?......

亚林瓜子
31分钟前
1
0
fragment 旋转时保持当前实例

设备旋转时保存Fragment的交互状态: setRetainInstance(true);

zdglf
34分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部