gpt4 book ai didi

ios - 如何设置 UITableView 空白区域的 backgroundColor 不同?

转载 作者:行者123 更新时间:2023-12-01 15:49:43 25 4
gpt4 key购买 nike

这是一个包含 5 个单元格和一个部分的 tableView。拉动tableView刷新时出现蓝色间隙。

one

代码如下:

- (UITableView *)salesRankTableView{
if(!_salesRankTableView){
_salesRankTableView = [[UITableView alloc] initWithFrame: CGRectMake(8, 183, KScreenWidth - 16, KScreenHeight-183-64) style: UITableViewStyleGrouped];

[_salesRankTableView registerNib: [UINib nibWithNibName: NSStringFromClass(SalesRankTableViewCell.class) bundle:nil] forCellReuseIdentifier: kSalesRankTableViewCell];
_salesRankTableView.layer.contents = (__bridge id _Nullable)([UIImage imageNamed: @"blue"].CGImage);

MJRefreshNormalHeader *header = [MJRefreshNormalHeader headerWithRefreshingTarget: self refreshingAction: @selector(rankRefresh)];
header.layer.contents = (__bridge id _Nullable)([UIImage imageNamed: @"white"].CGImage);
_salesRankTableView.mj_header = header;
}

return _salesRankTableView;

}


- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return 5;
}


- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
return 56;
}


- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{
return [UIView new];
}


- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section{
return [UIView new];
}

- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{
return CGFLOAT_MIN;
}

- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{
return CGFLOAT_MIN;
}

为了去掉tableView前面的蓝色缝隙。我改变了 tableView 的背景颜色。并遇到了另一个问题。

2

tableView 的空白区域的 backgroundColor 很重要。如何设置不同?

代码如下:

- (UITableView *)salesRankTableView{
if(!_salesRankTableView){
_salesRankTableView = [[UITableView alloc] initWithFrame: CGRectMake(8, 183, KScreenWidth - 16, KScreenHeight-183-64) style: UITableViewStyleGrouped];

[_salesRankTableView registerNib: [UINib nibWithNibName: NSStringFromClass(SalesRankTableViewCell.class) bundle:nil] forCellReuseIdentifier: kSalesRankTableViewCell];
_salesRankTableView.layer.contents = (__bridge id _Nullable)([UIImage imageNamed: @"white"].CGImage);

MJRefreshNormalHeader *header = [MJRefreshNormalHeader headerWithRefreshingTarget: self refreshingAction: @selector(rankRefresh)];
header.layer.contents = (__bridge id _Nullable)([UIImage imageNamed: @"white"].CGImage);
_salesRankTableView.mj_header = header;
}

return _salesRankTableView;

}

我曾经使用之前的代码在 tableView 后面插入一个白色 View 。

有点难,怎么办比较好?

最佳答案

尝试将_salesRankTableView 的背景颜色设置为白色

_salesRankTableView.backgroundColor = [UIColor clearColor]; // Newline
_salesRankTableView.mj_header.backgroundColor = [UIColor whiteColor];

更新:

替换下面的 tableView 委托(delegate)方法:

func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {

return 0
}

func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {

return UIView(frame: CGRect.zero)
}

关于ios - 如何设置 UITableView 空白区域的 backgroundColor 不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53114423/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com