2011-12-14 225 views
1

我想爲我的TableView使用背景圖片,所以當沒有足夠的數據填充屏幕上的整個表格時,我沒有得到剩餘的tableview單元格,所以我試圖按照這個網址,但要簡單得多:http://cocoawithlove.com/2009/04/easy-custom-uitableview-drawing.html設置UITableViewCell和UITableView背景的顏色

我這樣做是有一個出口我的UITableView的視圖控制器:

UIImage *backgroundTableImage = [UIImage imageNamed:@"form_background.png"]; // basically a gray->white gradient 
    UIImageView *tableBackgroundImageView = [[UIImageView alloc] initWithImage:backgroundTableImage]; 
    tableBackgroundImageView.frame = self.TableView.bounds; 
    self.TableView.backgroundView = tableBackgroundImageView; 
    [tableBackgroundImageView release]; 
    self.backgroundColor = [UIColor clearColor]; 

然後我的UITableViewCell的自定義子類,我在IB創建。在IB中,它的背景設置爲白色默認值。我的細胞都是透明的,我只能看到我的背景。我如何讓我的細胞保持白色。

+0

這行`tableBackgroundImageView.frame = self.TableView.bounds`似乎不正確。你確定這是做你想做的嗎? – gurooj 2011-12-15 01:30:11

回答

0

首先在你的.h文件中查看UIView * newView;申報其財產和的cellForRowAtIndexPath

if(cell==nil){ 

     tableView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"imagename.png"]]; 

................ 
......... 
newView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, cell.frame.size.width, cell.frame.size.height)]; 
[cell.contentView addSubview:newView]; 
................ 
............... 
} 
if(indexPath.row == 0){ 

newView.backgroundColor = [UIColor blueColor]; 

} 
if(indexPath.row == 1){ 

newView.backgroundColor = [UIColor redColor]; 

} 
if(indexPath.row == 2){ 

newView.backgroundColor = [UIColor greenColor]; 

} 

在您.m文件

synhesize它現在如果還有問題,請把我打倒。