我看过一些使用自定义图片作为分组UITableView背景的iPhone应用程序,而非标准灰线的应用程序。
这是如何实现的?
我看过一些使用自定义图片作为分组UITableView背景的iPhone应用程序,而非标准灰线的应用程序。
这是如何实现的?
以下是对我起作用的方法(一旦我弄清楚了,就相当简单);
1)在您的应用程序委托中添加一个视图,并将其设置为窗口的子视图:
UIView *bgView = [[UIView alloc]initWithFrame:window.frame];
bgView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"screenBG.png"]];
[window addSubview:bgView];
[bgView release];
2) 在每个视图控制器的.m文件中,在ViewDidLoad下,将该特定视图的背景颜色设置为透明(这样上面创建的其他bgView将会显示):
self.view.backgroundColor = [UIColor clearColor];
在我的情况下,第2步中的视图控制器是一个表视图控制器。看起来很好。
顺便说一句,在每个视图控制器中进行以下操作并不起作用:
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"screenBG.png"]];
那么请按照上面的步骤1和2进行操作。
希望这能帮到你, Tbone
试试这个
- (void) viewDidLoad {
[super viewDidLoad];
self.tableView.backgroundColor = [UIColor clearColor];
self.view.backgroundColor = [UIColor colorWithPatternImage: [UIImage imageNamed:@"wallpaper.png"]];
self.tableView.opaque = NO;
}
UITableView
的背景透明度设置为0%,然后在Interface Builder中简单地将UIImageView
层叠在其后面来实现这一点。这样可以使背景固定,无论表格状态如何。您还可以将UITableView
的背景设置为图像,但是那样背景会随着表格滚动而移动。(我暂时没有代码,但是我之前在苹果开发者论坛上得到了这个提示)。+[UIColor colorWithPatternImage:(UIImage)]
方法,如下所示:self.tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Background.png"]];
self.parentViewController.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"SortByCategory_320x480.png"]];
self.tableView.separatorColor = [UIColor clearColor];
self.tableView.backgroundColor = [UIColor clearColor];