2013-04-01 68 views
3

在我的iPhone應用程序,我已經提出了控制:如何在頂部使UITableViewController透明?

ShareResourceItemViewController* controller = [[ShareResourceItemViewController alloc] initWithSharedResourceItem:[selectedItems objectAtIndex:0]];  
    [self presentViewController:controller animated:YES completion:nil]; 

然後在這個控制器我想讓它透明的頂部。我試過了:

-(void)viewDidLoad{ 
    [super viewDidLoad]; 
    [self performSelector:@selector(test) withObject:nil afterDelay:3]; 

} 

-(void)test{ 
    self.tableView.backgroundColor = [UIColor clearColor]; 
    self.tableView.opaque = NO; 
    self.tableView.backgroundView = nil; 
} 

背景被清理,但控制器不透明,我看不到前一個控制器?我怎樣才能解決這個問題?

+0

爲該viewcontroller視圖提供背景顏色清晰的顏色。 – Balu

+0

試試這個:'self.view.backgroundColor = [UIColor clearColor];' –

回答

1

使tableview單元格的背景顏色也清除顏色。

+0

它沒有幫助 – revolutionkpi

+0

記住你應該改變willDisplayCellAtIndexPath中單元格的顏色 – Cosmin

1

試試這個。

self.view.backgroundColor = [UIColor clearColor]; 
1

我認爲,如果你想看到你以前的視圖控制器,你要沒有提出一個新的視圖控制器,而是換上新UIView你的視圖控制器的頂部。視圖控制器不能透明或不透明,但視圖可以。試試看:

ShareResourceItemViewController* controller = [[ShareResourceItemViewController alloc] initWithSharedResourceItem:[selectedItems objectAtIndex:0]]; 
[self.view addSubview:controller.view];