UITableView 在没有数据时候分割线问题

在iOS4.3中可以直接设置footer为nil,但是在5.0不行,因为UITableView会默认生成一个Footer。

(详见iOS Release Notes中的说明:Returning nil from the tableView:viewForHeaderInSection: method (or its footer equivalent) is no longer sufficient to hide a header. You must override tableView:heightForHeaderInSection: and return 0.0 to hide a header.)

plain类型的tableview当显示的数据很少时,下面的cell即使不显示数据也会有分割线,可以通过下面这个函数去掉多余的分割线。

原因:在TableView创建的时候,tableView会默认生成一个Footer。当没有给Footer赋值,或者返回一定的高度的时候,TableView就会存在分割线。

解决方法:

1.直接返回一个 趋近0(大于0)的高度,肉眼几乎不可见,则在没有数据时分割线消失。

2.设置tableView的TableFooterView = [[UIView alloc] init];

3.设置TableView的分割线类型为None;(当数据源为nil时,不为nil时,设置为SingleLine)

4.全局设置为None,自定义View给TableView的Cell 加分割线。

时间: 2024-07-28 21:50:21

UITableView 在没有数据时候分割线问题的相关文章

UITableView设置cell的separator 分割线

1.去除UITableView空白的多余的分割线 self.myTableview.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero]; 2.设置分割线的位置 方法一: 在willDisplayCell上增加如下代码 - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSInd

UITableView 如何展示数据

如果想要在UITableView中添加数据,需要一个数据源(dateSource)来显示数据 1.首先添加数据源 @interface PPViewController () <UITableViewDataSource> 2.遵守协议,实现数据源 #pragma mark - 数据源 //一共有多少组数据 - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView //每一组中添加多少行数据 - (NSInteger)t

IOS第七天(3:UiTableView 模型和数据的分组的显示)

*************UiTableView模型和数据的分组的显示 #import "HMViewController.h" #import "HMHero.h" @interface HMViewController () <UITableViewDataSource, UITableViewDelegate> @property (nonatomic, strong) UITableView *tableView; @property (nona

隐藏UITableView当没有数据或数据不够的时候出现的分割线.

在没有分割先的情况下,添加如下方法,当实例化tableview的时候调用该方法. - (void)setExtraCellLineHidden: (UITableView *)tableView{ UIView *view =[ [UIView alloc]init]; view.backgroundColor = [UIColor clearColor]; [tableView setTableFooterView:view]; [tableView setTableHeaderView:vi

iOS的UITableView的基础数据使用

在ViewController.m文件中: // // ViewController.m // 002使用UITABLE // // Created by 王丰 on 8/16/15. // Copyright (c) 2015 smartcost. All rights reserved. // #import "ViewController.h" @interface ViewController () <UITableViewDataSource> @property

IOS UITableView代码添加数据源和指定委托

-(void) viewDidLoad { [self.remindTableView setDelegate:self];//指定委托 [self.remindTableView setDataSource:self];//指定数据源 }

IOS开发——UI进阶篇—UITableView,索引条,汽车数据展示案例

一.什么是UITableView 在iOS中,要实现展示列表数据,最常用的做法就是使用UITableViewUITableView继承自UIScrollView,因此支持垂直滚动,而且性能极佳 UITableView的两种样式UITableViewStylePlainUITableViewStyleGrouped 二.如何展示数据 UITableView需要一个数据源(dataSource)来显示数据 UITableView会向数据源查询一共有多少行数据以及每一行显示什么数据等 没有设置数据源的

iOS学习笔记 20:去掉UITableView多余的空白行分割线

一.问题描述 在学习和开发中经常会遇到下面的问题,UITableView的UITableViewCell很少或者没有时,但UITableView有很多的空白行分割线.如下图: 如何去掉UITableView多余的空白行分割线? 二.问题分析 方法一:隐藏UITableViewCell自带的分割线,然后自定义分割线到UITableViewCell.自定义分割线的方法有很多种,可以自行查找. 方法二:很简单,修改tableFooterView.创建frame为CGRectZero的UIView,赋值

UITableView的常用属性和cell的内存优化

UITableView的常用属性: 分割线颜色设置: 1> 设置separatorStyle: 分割线的颜色 方法:tableView.separatorStyle = UITableViewCellSeparatorStyleSingleLine; 2> 设置separatorColor 不用系统枚举的值,自己设定颜色的值 24bitRGB R:8bit G:8bit B:8bit =========== 32bitRGBA R:8bit G:8bit B:8bit A:8bit 表示透明度