2014-04-24 48 views
0

在界面生成器中,我的UITableView上方有一個標題視圖,但是在模擬器中缺少它,並且表視圖似乎覆蓋了它,因爲它佔用了大部分屏幕。有什麼理由呢?解決?由UITableView重疊的自定義頁眉視圖

Interface Builder中

enter image description here

模擬器

enter image description here

+0

部分有多少是你的tableview? – Rashad

+0

只是簡單的代碼:[self.view addSubview:headerView];這將工作,或者你可以去 - (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)節;並在其中創建您的標題(UIView)。 – nikhil84

回答

0

你的情況:

從你的界面生成圖像,我可以見T帽子表視圖是視圖的子視圖,而你的標題視圖也是tableview的子視圖。它發生是因爲tableview隱藏了標題視圖。如果你添加標題視圖作爲tableview的子視圖,那麼它會出現。但是添加子視圖並不能解決你的問題,因爲當你滾動tableview時,子視圖將會消失。

爲了解決您的問題,我可以看到您的表格視圖中有導航欄,您可以將標題視圖添加爲子視圖UINavigationBar

[self.navigationController.view addSubview:headerView]; 

良好做法:

設置一節的標題視圖。然後你不需要在你的tableview的頂部設置任何自定義視圖。試試這個:

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { 
    UIView *aView = [[UIView alloc] init]; 
    //Customize the view according to our requirment 
    return aView; 
} 

還實現這一點:

-(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section { 
    return 44.f; // Make this height as you need. Or else you may not see the full view. 
} 

順便說一句,你可以創建UITableViewController,而不是UIViewController一個子類。 希望這有助於.. :)

0

取消擴展邊緣/在最熱門酒吧

enter image description here