簡體   English   中英

如何將NavigationBar(沒有NavigationController)和SearchBar添加到TableView

[英]How to add NavigationBar (without NavigationController) and SearchBar to a TableView

我覺得這真的不應該給我帶來的麻煩和我錯過的東西,但我似乎無法讓它發揮作用。 所以我想要一個在3個不同的TableView之間切換的TabBar。 所有這些都需要一個NavigationBar而不是一個NavigationController(因為它都是在初始模態進入TabBarController之后發生的)。 我所追求的完美例子是Apple Maps書簽。

我嘗試了三種不同的方法,所有這些方法都以不同的方式失敗了:

  1. 添加一個TableView,然后添加一個NavBar,然后添加SearchBar。 SearchBar只是替換了NavBar。
  2. 添加一個視圖,然后將NavBar添加到此。 然后將TableView添加為subView。 當我將SearchBar添加到這個子視圖時,它最終會在原型單元格下面運行(沒有嘗試運行它,因為我必須編寫一個新的ViewController來處理TableView現在是一個子視圖並且不認為值得的事實它只是給出了布局問題)。
  3. 添加一個視圖,然后添加一個NavBar。 然后添加一個具有TableViewController的ContainerView。 這只是在跑步時崩潰了。 我不確定這里的錯誤是什么,因為我不太確定在哪里可以捕獲任何異常...

到目前為止,我已經在IB中實現了我的大部分界面,並且希望盡可能地保持這種方式,但我確信必須有一些明顯我在這里缺失的東西。 我已經很長時間沒有進行過iOS編程了,所以如果我錯過了一些基本的東西,那就輕松吧! 任何幫助將非常感激。 即使它只是說我應該采用哪種方法並繼續嘗試。 謝謝!

編輯

我應該提一下,當我說TableViewController時,我的意思是TableViewController的自定義子類,它使用FetchedResultsController來填充單元格。

如果您要對新的視圖控制器(或帶有指向導航控制器的選項卡的標簽欄控制器)進行模態轉換,並且您希望該視圖控制器具有導航欄,那么您應該選擇視圖控制器想要以模態方式呈現,將其嵌入導航控制器(Editor-> Embed In-> Navigation Controller),然后以模態方式轉換到導航控制器。 相同的概念適用於您的標簽欄控制器,除了它們將是關系segues。 帶導航欄的模態segue的圖像

您應該向UIViewController(而不是表視圖控制器)添加導航欄,然后添加表視圖,並向該表視圖添加搜索欄和單元格。 我測試了這個,它工作正常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM