改变iOS应用中UITableView的背景颜色与背景图片的方法

改变UITableView的header、footer背景颜色

改变UITableView的header、footer背景颜色,这是个很常见的问题。之前知道的一般做法是,通过实现tableView: viewForHeaderInSection:返回一个自定义的View,里面什么都不填,只设背景颜色。但是今天发现一个更简洁的做法:

对于iOS 6及以后的系统,实现这个新的delegate函数即可:


- (void)tableView:(UITableView *)tableView willDisplayFooterView:(UIView *)view forSection:(NSInteger)section {

 view.tintColor = [UIColor clearColor];

}


还可以改变文字的颜色:

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

{

 UITableViewHeaderFooterView *footer = (UITableViewHeaderFooterView *)view;

 [footer.textLabel setTextColor:[UIColor whiteColor]];

}


修改tableView的背景图片

修改UITableView的背景图片

1.图片显示为'PatternImage'模式。


// viewDidLoad

self.tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"BackgroundImage"]];

// cellForRowAtIndexPath

cell.backgroundColor = [UIColor clearColor];


这种情况下背景图片像地板砖一样平铺。拉动tableView背景图片会随着动,若行数超过背景图片的高度,会接着显示下一张图片。

2.正常的背景图片。


// viewDidLoad

self.tableView.backgroundColor= [UIColor clearColor];

UIImageView*imageView = [[UIImageView alloc]initWithImage:[UIImageimage Named:@"BackgroundImage"]];

self.tableView.backgroundView = imageView;

// cellForRowAtIndexPath

cell.backgroundColor = [UIColor clearColor];


这种情况下背景图片不会动,即无论多少行看到的都是同样的背景。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。