簡體   English   中英

使用UITabBarController時從按鈕強制更改視圖

[英]Force a view change from a button when using UITabBarController

當使用UITabBarController時,當用戶在View1上輸入一些數據並按下按鈕時,我需要執行一些計算並將結果顯示在View2上。

我有一個AppDelegate,View1Controller,View2Controller和View3Controller(View3基本是靜態視圖)。 我的AppDelgate聲明了UITabBarController * rootController;

在View1上,我在IBAction中為buttonPressed執行了計算; 但是,我似乎無法強迫視圖以編程方式切換到View2。

我已經做了很多尋找類似問題的工作,並且認為我應該做類似“ self.rootController.selectedIndex = 1”的事情; 但是,當我從View1Controller上的buttonPressed內部執行此操作時,出現錯誤“請求成員rootController不在結構或聯合中的某些內容”。

我想我在這里缺少一些基本的東西……可能需要用AppDelegate做一些事情,但我的頭撞牆了。

任何人都可以在這種情況下提供一些指導...例如我應該在View1Controller標頭中執行的關鍵操作以及參照我的AppDelgate的實現? 謝謝!

對於任何搜索如何切換從一個標簽到另一個,提供了一種答案在這里

這聽起來像一個奇怪的UI,但請接受您正在嘗試做正確的事情。

iPhone開發與Model View Controller-MVC有關。 因此,原則上您想要的是view1更新模型,View2根據模型執行計算。

如果您使用的是標簽欄控制器,那么您可能想知道何時切換標簽頁才能執行這些操作。 在view1中,您可能需要編寫代碼以更新viewWillDisappear中的模型-這將在選項卡被下一個替換時運行。 補充功能(您可能希望在view2中使用它)是viewWillAppear-可用於用模型中的數據更新view2。

現在,剩下的工作就是弄清楚放置模型的位置。 您可能需要根據需要存儲在模型中的數據使用@parameters創建一個類。 然后,您可以在AppDelegate中實例化模型,並將模型作為參數傳遞給兩個視圖。

暫無
暫無

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

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