2013-12-09 42 views
2

設置我的tableView的背景圖片:背景圖像的UITableView改變時滾動

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

我設置透明的我的表視圖BACKGROUNDCOLOR細胞:

SBQCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; 

    if (cell==nil){ 
     cell.backgroundColor=[UIColor clearColor]; 
    } 

當我做滾動的BACKGROUNDCOLOR表視圖的更改。

捕捉1(無滾動):

Image1

捕獲2(帶有滾動):

enter image description here

使用作爲背景的圖像Im那:

enter image description here

我可以做些什麼來將圖像背景弄糟到全表視圖?由於

+0

呃......你注意到你使用的圖像底部較暗,那麼它在頂部?這就是發生了什麼事。圖像正在重複... – nhgrif

+1

你可以在保存這個圖像的表格後面的視圖控制器上放置一個'UIImageView',然後使用透明tableview背景和單元格的透明背景放置表格視圖,以便它們只在靜態背景上滾動...伸展高度你的圖像將徹底改變你有它的線條角度... – nhgrif

回答

1

解決了:

self.tableView.backgroundView=[[UIImageView alloc] initWithImage: 
            [UIImage imageNamed:@"ContentBg.png"]]; 

更多:

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{ 
    cell.backgroundColor = [UIColor clearColor]; 

} 

細胞保持透明,當我做滾動和表視圖的背景圖像大小。

謝謝大家!

4

充分利用的TableView後視圖層上的背景,而不是在自己的TableView,然後設置上的UITableView

或...

一個明確的背景設置tableview.backgroundView不是backgroundColor

0

您將背景圖像作爲模式添加到backgroundColor屬性中。

也許試試這個:

UIImageView *iv = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Content.png"]]; 
[self.tableView setBackgroundView:iv]; 

蘋果的UITableView類參考這裏:

https://developer.apple.com/Library/ios/documentation/UIKit/Reference/UITableView_Class/Reference/Reference.html#//apple_ref/occ/instp/UITableView/backgroundView

+0

謝謝!我發現它:表格視圖的背景視圖會自動調整大小以匹配表格視圖的大小 – santibernaldo

0

您有:

if (cell==nil){ 
     cell.backgroundColor=[UIColor clearColor]; 
    } 

我想你的意思是:

if (cell!=nil) { 
     cell.backgroundColor=[UIColor clearColor]; 
    }