簡體   English   中英

UINavigationController包含一個UITableView,然后是帶有更多UITableView的UITabBarController

[英]UINavigationController containing a UITableView, then a UITabBarController with more UITableView's

抱歉,標題含糊!

我正在嘗試實現以下功能:首先為用戶提供一個包含UITableView的UINavigationController。 當用戶在表格視圖中點擊一個單元格時,我想推送一個新視圖,該視圖包含一個UITabBarController( 無論當前是否可見UIViewController,它將保持可見 )和一個UITableView,人們可以再次從中選擇一個單元格然后將再次推送到UINavigationController。

如果用戶從UITabBar中選擇一個選項卡,我希望第一個屏幕(沒有UITabBar)成為用戶可以返回的屏幕,而不是他們剛來自的選項卡。 另外,如果用戶選擇任何選項卡上的UITableView項之一,我希望后退按鈕返回到先前顯示的屏幕(如您期望的那樣,使用標准UINavigationController)

我花了幾個小時試圖找到答案,但我什么都做不了! 我希望我的解釋不要太含糊或令人困惑。

詹姆士。

如果您想要的UX混淆了這里的解釋,請想象您的用戶會有什么感覺! 我會重新考慮預期的設計。

從《 View Controller編程指南》中:

使用選項卡欄控制器的應用程序還可以在一個或多個選項卡中使用導航控制器。 在同一用戶界面中組合這兩種類型的視圖控制器時,選項卡欄控制器始終充當導航控制器的包裝。 您永遠都不想將標簽欄控制器推到導航控制器的導航堆棧上。 這樣做會造成一種不尋常的情況,即選項卡欄僅在特定視圖控制器位於導航堆棧的頂部時才會出現。 標簽欄設計為持久性的,因此這種短暫的方法可能會使用戶感到困惑。

就是說,您可能會破解與您正在談論的內容接近的東西,但是您需要編寫一堆代碼來使用UITabBarControllerDelegateUINavigationControllerDelegate方法處理導航,並跟蹤需要知道要在哪里的任何狀態根據用戶操作導航到。 奇怪的是,您最終會遇到一些復雜的代碼,維護和更糟糕的使用。

暫無
暫無

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

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