2012-07-29 64 views
1

我試圖將工具欄直接放置在導航欄下方,但我需要工具欄才能直接在其下方隱藏內容。我的快速解決方案是將導航控制器的本地工具欄設置爲可見,這可以正常工作並正確調整其下方的視圖的大小,以便它不會讓任何東西隱藏在其後面,但默認工具欄顯示在屏幕的底部。將工具欄直接放置在導航控制器下,而不會隱藏工具欄下方的內容

我需要它在頂部,就在導航欄下方。我認爲簡單的解決方案是改變默認工具欄的框架(我不知道該怎麼做),或者將工具欄的新實例放置到視圖上(它可以工作,但隱藏下面的內容),但是讓它調整下面的觀點。

請看下面的圖片,我發現看到我想要做什麼。 (注意tableview中的第一行的啓動方式的標籤欄下)

enter image description here

謝謝!

+0

當試圖做這種類型的功能,它非常有用採取當前的觀點和走超視圖,打印出他們的幀。然後,您將能夠更好地評估要採取的行動。如果您想要在導航欄下爲該工具欄添加動畫,則必須將該工具欄插入層次結構中相同或較低的視圖中。請記住,您可以設置某個具有負y的原點的框架,然後在設置動畫時將y更改爲更正的值。最後你可以做你想做的事情,但可能需要一些調查工作。 – 2012-07-30 00:30:07

+0

您是否找到解決方案? – fatuhoku 2014-05-10 19:03:01

回答

0

你混淆了兩件事。 NavigationController工具欄屬性是底部欄,您添加到視圖中的任何工具欄都與導航控制器無關,但是該視圖的屬性。

如果您在視圖頂部有自己的工具欄,則需要將視圖內容的其餘部分向下移動或將該工具欄設置爲半透明,如果這就是您要查找的內容。

同樣,導航控制器工具欄始終是底部欄,您在IB中放置的工具欄只是該視圖的工具欄,您可以將它放在任何位置。

0

我不相信你可以改變默認工具欄的框架。您需要創建自己的工具欄實例,將其放置在導航欄的底部,然後調整您的tableView的大小以適應下面的情況。 我們無法看到你是如何設置你的視圖的,但如果你開始的視圖被分類爲UITableViewController,那麼你將會遇到麻煩。你想要的是以一個UIViewController作爲你的主控制器,添加一個tableview和工具欄作爲子視圖。然後適當放置和調整它們的大小。

如果您隱藏並顯示工具欄,您將創建一個方法在導航控制器中將其向上移動並再次調整tableview的大小。