全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

iOS中UITableView使用的常见问题总结

1、如何设置headerView以及其高度

tableView.tableHeaderView = myHeaderView
 
let height = headerView.systemLayoutSizeFittingSize(UILayoutFittingCompressedSize).height
var frame = headerView.frame
frame.size.height = height
headerView.frame = frame

2、去掉多余cell的分割线

self.tableView.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero];

3、如何设置section数、行数

extension MyViewController: UITableViewDataSource {
 
 // section数
 func numberOfSections(in: UITableView) -> Int {
 }
 
 // row数
 public func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
 }
 
 // 在section和row下,cell
 public func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
 }
 
}

4、iOS 8+自动计算行高、section高度

tableView.estimatedRowHeight = 80
tableView.rowHeight = UITableViewAutomaticDimension

实际上,sectionHeader高度也可以自动算高

tv.estimatedSectionHeaderHeight = 20
tv.sectionHeaderHeight = UITableViewAutomaticDimension

当然sectionFooter也可以,不再赘述

5、禁用tableview自带的分割线

tv.separatorStyle = .none

6、设置sectionHeader和sectionFooter,以及他们的高度

view

extension MyViewController: UITableViewDelegate {
 func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
 
 }
 
 func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
 
 }
}

高度

extension TTEntranceExamReportViewController: UITableViewDelegate {
 func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
 }
 
 func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
 }
}

7、点击cell有阴影,抬起时候阴影消失

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
 tableView.deselectRow(at: indexPath, animated: no)
 // other code
}

8、iPad的UITableViewCell自动缩进的问题

if (IS_IPAD && [_tableView respondsToSelector:@selector(setCellLayoutMarginsFollowReadableWidth:)]) {
 _tableView.cellLayoutMarginsFollowReadableWidth = NO;
}

Swift版:

if IS_IPAD, #available(iOS 9.0, *) {
 tableView.cellLayoutMarginsFollowReadableWidth = false
}

9、设定UITableviewCell按下的点击效果

cell.selectedBackgroundView = [[PureColorView alloc] initWithColor:[UIColor redColor]];

PureColorView是将颜色转化为纯色View的类,网上可以搜到

10、sectionHeader不吸顶

let tv = UITableView(frame: CGRect.zero, style: .grouped)

11、使用.groupted后,TableView底部有20px多余空白

tv.tableFooterView = UIView(frame: CGRect(x: 0, y: 0, width: 1, height: CGFloat.leastNormalMagnitude))

12、ios 8系统上,点击cell push一个vc,再pop回来,部分cell高度会乱掉

需要强制实现下估算高度

传送门

func tableView(_ tableView: UITableView, estimatedHeightForRowAt indexPath: IndexPath) -> CGFloat {
 return self.tableView(tableView, heightForRowAt: indexPath)
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对各位iOS开发者们能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。


# ios  # uitableview优化  # uitableview  # 两列  # uitableview删除行  # ios UITableView实现无数据加载占位图片  # iOS中UIScrollView嵌套UITableView的实践教程  # IOS UITableView和NavigationBar的常用设置详解  # iOS基于UITableView实现多层展开与收起  # iOS中UITableView Cell实现自定义单选功能  # iOS中的UITableView的重用机制与加载优化详解  # IOS UITableViewCell详解及按钮点击事件处理实例  # IOS中UITableView滚动到指定位置  # IOS UITableView颜色设置的实例详解  # 如何设置  # 分割线  # 他们的  # 按下  # 这篇文章  # 自带  # 谢谢大家  # 转化为  # 可以自动  # 行数  # 传送门  # 网上  # 有疑问  # indexPath  # cellForRowAt  # public 


相关文章: 相册网站制作软件,图片上的网址怎么复制?  如何配置IIS站点权限与局域网访问?  建站之星如何优化SEO以实现高效排名?  如何通过虚拟机搭建网站?详细步骤解析  历史网站制作软件,华为如何找回被删除的网站?  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  网站制作说明怎么写,简述网页设计的流程并说明原因?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  如何通过WDCP绑定主域名及创建子域名站点?  金*站制作公司有哪些,金华教育集团官网?  西安专业网站制作公司有哪些,陕西省建行官方网站?  制作电商网页,电商供应链怎么做?  如何撰写建站申请书?关键要点有哪些?  如何用PHP快速搭建高效网站?分步指南  建站之星官网登录失败?如何快速解决?  如何解决VPS建站LNMP环境配置常见问题?  ,sp开头的版面叫什么?  网站制作新手教程,新手建设一个网站需要注意些什么?  成都响应式网站开发,dw怎么把手机适应页面变成网页?  昆明网站制作哪家好,昆明公租房申请网上登录入口?  如何在云主机上快速搭建多站点网站?  中山网站制作网页,中山新生登记系统登记流程?  招贴海报怎么做,什么是海报招贴?  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  打鱼网站制作软件,波克捕鱼官方号怎么注册?  网站制作网站,深圳做网站哪家比较好?  想学网站制作怎么学,建立一个网站要花费多少?  网站制作话术技巧,网站推广做的好怎么话术?  网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?  如何确认建站备案号应放置的具体位置?  外汇网站制作流程,如何在工商银行网站上做外汇买卖?  江苏网站制作公司有哪些,江苏书法考级官方网站?  文字头像制作网站推荐软件,醒图能自动配文字吗?  网站制作模板下载什么软件,ppt模板免费下载网站?  如何在阿里云ECS服务器部署织梦CMS网站?  如何快速查询网站的真实建站时间?  头像制作网站在线观看,除了站酷,还有哪些比较好的设计网站?  c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】  浅析上传头像示例及其注意事项  北京企业网站设计制作公司,北京铁路集团官方网站?  如何基于云服务器快速搭建网站及云盘系统?  如何选择可靠的免备案建站服务器?  Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解  定制建站价位费用解析与套餐推荐全攻略  网站制作报价单模板图片,小松挖机官方网站报价?  如何用wdcp快速搭建高效网站?  佛山企业网站制作公司有哪些,沟通100网上服务官网?  太原网站制作公司有哪些,网约车营运证查询官网?  七夕网站制作视频,七夕大促活动怎么报名?  Android使用GridView实现日历的简单功能 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。