use*_*584 2 iphone background objective-c uitableview
我有一个没有XIB的UITableview控制器.我通过这样做设置tableview的背景颜色:
[self.tableView setBackgroundColor:[UIColor colorWithPatternImage:
[UIImage imageNamed:@"MmyImage.png"]]];
Run Code Online (Sandbox Code Playgroud)
我的图像是一个渐变图像,所以尽管上面的代码没问题,但是当tableview进入编辑视图时,它会重绘每个单元格的图像,并且它看起来像看起来不优雅的线条.
我想将tableviews背景设置为清除颜色并将superview的颜色设置为图像,以便tableview在superview上平滑过渡.但是,以下代码不起作用:
[self.view setBackgroundColor:[UIColor colorWithPatternImage:
[UIImage imageNamed:@"myImage.png"]]];
[self.tableView setBackgroundColor:[UIColor clearColor]];
Run Code Online (Sandbox Code Playgroud)
这使得背景完全变白,我不知道为什么.
帮助赞赏..谢谢.
编辑:新代码,但这不起作用:
UIImageView * imgBg = [[UIImageView alloc] initWithImage:[[UIImage imageNamed:@"myImage.png"] stretchableImageWithLeftCapWidth:6 topCapHeight:6]];
imgBg.frame = self.tableView.window.bounds;
[self.tableView.superview addSubview:imgBg];
//[self.view addSubview:imgBg];
//[self.tableView.window sendSubviewToBack:imgBg];
//[self.view bringSubviewToFront:self.tableView];
[self.tableView setBackgroundColor:[UIColor clearColor]];
[imgBg release];
Run Code Online (Sandbox Code Playgroud)
在自定义UITableViewController子类中,self.view将返回相同的self.tableView.所以你在那里做的是改变同一个对象.最后,你会看到UIWindow.所以为了获得理想的结果,你应该这样做 -
[self.view.window setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"myImage.png"]]];
[self.tableView setBackgroundColor:[UIColor clearColor]];
Run Code Online (Sandbox Code Playgroud)
UITableView有backgroundView房产.用它.
aTableView.backgroundView = [[[UIView alloc] initWithFrame:aTableView.bounds] autorelease];
aTableView.backgroundView.backgroundColor = backgroundColor;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3583 次 |
| 最近记录: |