我想给我的 UITableView 一个背景图片,所以我尝试了这个方法:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
UIImageView *v = [[UIImageView alloc] initWithFrame:self.view.bounds];
[v setImage:[UIImage imageNamed:@"Background.png"]];
[self.view addSubview:v];
[self.view sendSubviewToBack: v];
...
}
这工作正常。但是,在 pushViewController 之后,这个方法就不再起作用了(为什么?)。所以我换了一个方法:
- (void)viewDidLoad
{
[super loadView];
// Do any additional setup after loading the view from its nib.
self.tableView.backgroundView = nil;
self.tableView.backgroundColor = [[UIColor alloc]initWithPatternImage:[UIImage imageNamed:@"Background.png"]];
...
}
这可以工作,但结果不是我所期望的。背景图片不知何故改变了它的大小(如部分放大),并且单元格的背景比前一个更暗。
有人知道原因吗?我被这个问题困扰了很长时间。
非常感谢!