关于UITableView的一些收集整理

1.当UITableView的样式为group时,顶部会默认留出空白,设置了

self.automaticallyAdjustsScrollViewInsets = YES;

依然没用,最后解决的办法是在顶部设置一个高度为1的视图

tableView.tableHeaderView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 375, 1)];

这是第一个,第二个需要注意的细节是当使用了mj_refresh的时候设置

tableView.mj_header = [MJRefreshNormalHeader headerWithRefreshingBlock:^{
        [selfWeak loadData];
    }];

是MJRefreshNormalHeader,不是MJRefreshHeader,会出现无法出现下拉箭头

同理,设置上拉加载的时候也需要注意footer的使用,应该通用MJRefreshAutoNormalFooter的类,都是normal类型,底部多了一个Auto字样,代码如下

tableView.mj_footer = [MJRefreshAutoNormalFooter footerWithRefreshingBlock:^{
        [selfWeak loadBMoreData];
    }];

让表格自动刷新,调用加载数据的方法是设置header的状态,代码如下:

[self.tableView.mj_header setState:MJRefreshStateRefreshing];

2.表格为分组样式的时候,设置组之间的颜色有两种办法
第一:

tableView.backgroundColor = [UIColor whiteColor];

第二:tableview的代理方法中实现

//生成分组头视图对象
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    UIView* myView = [[UIView alloc] init];
    return myView;
}

//即将显示分组头视图的时候设置属性
-(void)tableView:(UITableView *)tableView willDisplayHeaderView:(UIView *)view forSection:(NSInteger)section{
    view.backgroundColor = RGB(230, 230, 230);
}

你可能感兴趣的:(关于UITableView的一些收集整理)