2012-02-22 121 views
0

我有一個offlineMapVConlineMapVC爲我的應用程序支持在線地圖(使用MapKit和谷歌地圖)和離線地圖(使用Route-Me)。使用視圖控制器管理兩個其他視圖控制器

我做我自己的mapVC來管理這些mapVCs的切換,並能夠使用的視圖控制器作爲一個獨立的視圖控制器。嗯,我已經通過使offlineMapVC和新mapVC魔女我現在用的都在我的應用程序的onlineMapVC實例變量做到了這一點。

首先關閉所有的事情似乎工作,但。但是,在長時間使用這種方法時,由於在層次結構中使用視圖控制器,我遇到了一些問題。 I read this is the wrong way to go.管理兩個視圖控制器之間切換的正確方法是什麼?我的問題似乎很簡單,但我找不到一個體面的解決方案。

+1

我解決了通過使用'addChildViewController:'方法定義我的視圖控制器層次結構的問題。 – thijsai 2012-02-23 08:34:46

回答

2

我把視圖控制器,自己視圖控制器,我已經看到了比我更好的程序員做同樣的事情。 (見羅布納皮爾「的iOS 5編程 - 挑戰極限。」他提到它經常)只要你沒有直接控制同樣的觀點和子視圖多個視圖控制器,你應該沒問題吧。

由於約拿·威廉斯寫那篇文章,我認爲iOS 5的正式使用自定義內容視圖控制器使用視圖控制器層次。你可能會認爲你的mapVC是一個自定義的內容視圖控制器,並實現了onlineMapVC和offlineMapVC作爲子視圖控制器。

(蘋果文件鏈接往往frequenctly改變,所以谷歌「自定義內容視圖控制器」的文檔。)

如果你可以提供一些更多的上下文你的意思是由「兩個視圖控制器之間切換」是將有助於回答你的問題。通常,我有多個視圖控制器同時處於活動狀態。我不會在它們之間切換。 (我在同一個應用程序中使用了導航和標籤欄控制器,但是我假設你知道這些工作是如何工作的,而且你問的是不同的問題,但目前還不清楚你的情況是什麼。)

+0

Thansks爲您的快速回復,我確實在視圖控制器之間切換,通過添加和刪除onlineMapVC和offlineMapVC的視圖到mapVC的視圖。 – thijsai 2012-02-22 18:13:17

相關問題