2013-05-27 45 views
0

我有一個UIViewController與頂部UITableView。我正在嘗試在表格視圖頂部放置一個小型UIView疊加層。我以編程方式添加了它(並使用了bringSubviewToFront),然後在Interface Builder中添加了它,但它不會以任何方式顯示。UIView不出現在UITableView頂部

這是爲什麼?我如何在表格視圖頂部添加UIView覆蓋層?

編輯:

我沒有使用UITableViewController。這是一個UIViewControllerUITableView。下面是我在viewDidLoad使用的代碼:

UIView *joinMediame = [[UIView alloc] initWithFrame:CGRectMake(0, 44, 320, 44)]; 
joinMediame.backgroundColor = [UIColor orangeColor]; 
[self.view addSubview:joinMediame]; 
[self.view bringSubviewToFront:joinMediame]; 
+0

您可以發佈您用於添加視圖的代碼嗎? – meronix

+0

你使用TableView作爲viewController的根視圖嗎?如果是這樣,請將根視圖更改爲普通UIView,然後將該表作爲子視圖並將疊加層作爲兄弟表添加到表中。 –

+0

如果不是UITableViewController,使用'addSubview'應該可以正常工作。請發佈您的代碼。 –

回答

0

如果您打算爲您的視圖與表格內容滾動,我將使它表的tableHeaderView。如果您希望視圖在頂部是靜態的,我會將其添加爲控制器的子視圖,然後調整表視圖框架的大小以爲靜態視圖騰出空間。

注意,如果控制器是UITableViewControllerself.viewUITableView,所以如果你這樣做[self.view addSubview:staticView]這不會產生你所期待的效果。

+0

我希望它是靜態的。我將它添加爲子視圖(請參閱編輯)並且它不會顯示。 – darksky

+0

你是否也調整過桌子的框架? – jszumski

+0

不,我沒有。我需要嗎?把子視圖放在最前面還不夠嗎? – darksky