2012-12-03 49 views
7

由於導航欄的風格是半透明的,我在導航欄下隱藏了我的第一節標題(節#0)。UITableView節標題在導航欄下爬行

我知道這之前已經問過了,一個解決方法是做:

self.navController.navigationBar.translucent = YES; 

這地方有問題的看法正確的 - 部分標題出現在導航欄上,而不是躲在後面,這是下我想要的是。

但是,這會使我的其他視圖設計無效,並在所有視圖設計中留下額外的空間,就在我的導航欄下方。

如何在正確的位置獲取節標題?

回答

14

解決:

  • 打開故事板文件
  • 選擇的UITableView
  • 在屬性檢查員 - >滾動視圖的大小 - >內容的插圖,機頂盒= 44(或任何是您的導航欄高度)。

查看圖像的下方 - 這是在大小節:

enter image description here

And here is如何以編程方式解決它。

+0

屬性檢查器在哪裏? – Gank

+0

檢查器中不存在內容插入,僅滾動指示器插入。 –

+0

@SteveTaylor - 檢查你是否意外地使用隱藏按鈕隱藏它。 –

1

對於使用(SVPullToRefresh)時出現此問題的其他人。

它可以通過將UIScrollView + SVPullToRefresh.m中的view.originalTopInset更改爲您希望開始標題的任何點來解決。

+0

塔裏克可以請你分享一下這方面的細節嗎?在最初的滾動操作之後,我永遠無法讓我的第一個tableview元素在navcontroller/bar下面出現。我在SVPullToRefresh代碼中看到originalTopInset var,但它在很多地方使用 - 我應該在哪裏更改它以及如何修改? –

8

解決此問題的同時使用SVPullToRefresh。我創建了下面的方法和[self.tableView.pullToRefreshView stopAnimating];

-(void)stopPullToRefreshAnimation 
{ 
    [self.tableView.pullToRefreshView stopAnimating]; // call to stop animation 

    UIEdgeInsets inset = UIEdgeInsetsMake(44, 0, 0, 0); 
    self.tableView.contentInset = inset; 
    self.tableView.scrollIndicatorInsets = inset; 
} //stopPullToRefreshAnimation 
+0

在tableview類型的對象上找不到屬性pulltorefreshview –