对于ios7,ios8及以上来说,调整UITableView的cell的分割线位置已经是相当不便,因为UITableView内部使用了margin layout.

其实只需要如下这样子就可以实现分割线的控制。

-(void)tableView:(UITableView )tableView willDisplayCell:(UITableViewCell )cell forRowAtIndexPath:(NSIndexPath *)indexPath

{

// 下面这几行代码是用来设置cell的上下行线的位置

if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {

[cell setLayoutMargins:UIEdgeInsetsZero];

}

//按照作者最后的意思还要加上下面这一段,才能做到底部线控制位置,所以这里按stackflow上的做法添加上吧。

if([cell respondsToSelector:@selector(setPreservesSuperviewLayoutMargins:)]){

[cell setPreservesSuperviewLayoutMargins:NO];

}

}

如果要直接使用TableView的sectionTitle,但又想设置它的字体,颜色什么的,可以使用如下方法。

- (void)tableView:(UITableView )tableView willDisplayHeaderView:(UIView )view forSection:(NSInteger)section

{

// Background color

view.tintColor = [UIColor blueColor];

// Text Color

UITableViewHeaderFooterView *header = (UITableViewHeaderFooterView *)view;

[header.textLabel setTextColor:[UIColor redColor]];

// 另一种方法设置背景颜色

// header.contentView.backgroundColor = [UIColor blackColor];

}

不显示分割线通过tableFooterView修改UITableView分割线:

在使用UITableView的时候,如果没有数据/数据很少,会发现即使没有数据的cell也会有分割线,这样看起来并不美观,通常我们希望只有显示数据的cell会显示对应的分割线,而不显示数据的cell不显示分割线。

常用的做法有两种:

第一种做法是首先取消显示分割线,然后自定义cell,在cell的最底部加上一个高度为1的view,这样看起来就像是一条分割线。只有cell有数据显示出来的时候才会显示这个view,这样就达到了目的。

第二种做法既不用取消显示分割线,也不需要自定义cell,而是直接这样做:

self.tableView.tableFooterView = [[UIView alloc] init];

运行显示结果,发现就已经达到了我们的目的。很明显这种做法更方便。

ios删除分割线_iOS应用开发中UITableView的分割线的一些设置技巧相关推荐

  1. android 4.4 禁止下拉,Android开发中禁止下拉式的实现技巧

    我们开发项目的时候,经常会看到禁止的情况,而Android开发中并没有直接调用的接口,下面是爱站技术频道小编就给大家介绍的Android开发中禁止下拉式的实现技巧,希望网友们喜欢! 分享给大家供大家参 ...

  2. Win10 UWP开发中的重复性静态UI绘制小技巧 1

    Win10 UWP开发中的重复性静态UI绘制小技巧 1 原文:Win10 UWP开发中的重复性静态UI绘制小技巧 1 介绍 在Windows 10 UWP界面实现的过程中,有时会遇到一些重复性的.静态 ...

  3. iOS开发UI篇—iOS开发中三种简单的动画设置

    [在ios开发中,动画是廉价的] 一.首尾式动画 代码示例: // beginAnimations表示此后的代码要"参与到"动画中 [UIView beginAnimations: ...

  4. c语言改变cmd 字体大小_嵌入式开发中常见3个的C语言技巧

    原文:https://www.cnblogs.com/CrazyCatJack/p/6080266.html 1.指向函数的指针 指针不光能指向变量.字符串.数组,还能够指向函数.在C语言中允许将函数 ...

  5. ios xcode文件前缀_IOS Xcode开发中 文件名的后缀名m,mm,cpp,h区别

    文件区别: .h:头文件.头文件包含类,类型,函数和常数的声明. .m :源代码文件.这是典型的源代码文件扩展名,可以包含Objective-C和C代码. .mm :源代码文件.带有这种扩展名的源代码 ...

  6. storyboard搭建项目_iOS应用开发中StoryBoard搭建UI界面的基本使用讲解

    StoryBoard 的本质StoryBoard 是苹果在 iOS 5 中引入的新技术方案,目的是给纷繁复杂的 nib.xib 们一个温暖的家,让他们之间的关系更直观地展示出来,并提供了一种新的页面间 ...

  7. 开发中常用的19 条 MySQL 优化技巧

    作者:zhangqh 来源:segmentfault.com/a/1190000012155267 本文我们来谈谈项目中常用的MySQL优化方法,共19条,具体如下: 一.EXPLAIN 做MySQL ...

  8. 【不定期更新】游戏开发中的一些良好习惯与技术技巧

    平时programing时想到和积累的一些小技巧,在这里写成一篇日志,欢迎拍砖. <技巧一> 使用二进制位移运算来进行乘数是2的幂的简单整数乘法(除法),因为所有的数据在计算机中都是以二进 ...

  9. iOS开发系列--UITableView全面解析

    iOS开发系列--UITableView全面解析 2014-08-23 23:20 by KenshinCui, 2202 阅读, 18 评论, 收藏,  编辑 --UIKit之UITableView ...

最新文章

  1. android6.0单独编译和调试framework源码的方法
  2. UltraEdit常用快捷键
  3. QT的QCache类的使用
  4. 从双层优化视角理解对抗网络GAN
  5. Caused by: org.springframework.beans.NotWritablePropertyException
  6. vba打开txt文件_VBA基础入门(34)读取txt文本文件
  7. python中oxf2是多少_python 函数基础2
  8. Java-java.util.concurrent.locks.AbstractQueuedSynchronizer
  9. SpringCloud 2020.x.x工程bootstrap引导配置不生效的解决方案
  10. hdu1428漫步校园( 最短路+BFS(优先队列)+记忆化搜索(DFS))
  11. 拓端tecdat|R语言弹性网络Elastic Net正则化惩罚回归模型交叉验证可视化
  12. Java 技术体系简介
  13. MTK 人工智能生态系统 <一> 简介
  14. 白小小的可爱伤感空间日志发布:有些人,注定只是过客
  15. k8s——kubeadm工具使用
  16. Win10如何禁止自动更新?Win10禁止更新又恢复怎么办?
  17. gpib-usb-hs linux,美国NI GPIB-USB-HS+连接线GPIB转USB接口控制器高速传输
  18. 扫地机器人噪音响_硬件老兵拆机分析:扫地机器人噪音大小到底与何相关?
  19. 微信旧岛小程序章节目录
  20. 利用PhotoSwipe进行完成图片预览功能

热门文章

  1. 15.2 java中迭代器的注意事项
  2. python迭代器-迭代器取值-for循环-生成器-yield-生成器表达式-常用内置方法-面向过程编程-05...
  3. Rancher第一款Kubernetes操作系统推出
  4. NOIP2018复赛 游记
  5. 深入出不来nodejs源码-编译启动
  6. Median of Two Sorted Arrays
  7. SonarQube代码质量管理平台安装与配置
  8. 在存储过程中如何使用另一个存储过程返回的结果集
  9. 怎样才能让一段代码每隔一段时间执行一次?
  10. indent 的格式