iOS应用中UITableView的背景颜色与背景图片的方法
我们经常会遇到TableView设置背景图像的问题,但如果直接设置背景视图,就不会显示背景图像,因为默认情况下TableView上的单元格是不透明的,下面就让爱站技术频道小编带你一起来学习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];
这种情况下背景图片不会动,即无论多少行看到的都是同样的背景。
本文是爱站技术频道小编为大家介绍的iOS应用中UITableView的背景颜色与背景图片的方法,相信大家都了解了,希望大家可以继续支持爱站技术频道!