2010-09-02 52 views
1

我有一個現有的iPhone視圖控制器與相應的視圖(通過筆尖),顯示交互式圖形。用戶可以觸摸光標點沿着曲線移動並獲取與該觸摸點對應的數據。結合現有視圖/控制器的最佳方法?

現在,我想創建一個新的屏幕,這是一種「比較」屏幕結合這兩個現有的意見。因此,用戶可以看到兩條不同曲線的曲線,並分別與每條曲線進行交互。我認爲如果使用確切的現有視圖就會好,只需調整大小以適應一半的空間。

對最大化重複使用的最佳方式有什麼意見?

+0

做什麼你的意思是最大化重用? – mk12 2010-09-03 01:03:35

+0

我想重新使用我現有的View Controller代碼,而不是編寫一個新的視圖控制器,它基本上在每個視圖中重複了代碼,但是同時處理它們而不僅僅是它現在所做的。 – 2010-09-03 02:31:13

回答

0

Apple的文檔建議在iPhone的每個屏幕上只使用一個視圖控制器。該框架的設計並不是爲了支持每個屏幕上的多個視圖控制器,但如果您小心的話,您可以避開它。

我推薦創建一個CompositeViewController類,它包含對兩個子視圖控制器的引用。 CompositeViewController的視圖設置爲全屏包裝視圖。每個子視圖控制器的視圖都設置爲適當的子視圖。

使這項工作的關鍵是將CompositeViewController的某些調用手動委派給子視圖控制器。特別是,你需要委派這些方法,如果你希望他們能夠叫上你的孩子視圖控制器:

  • viewWillAppear:animated:
  • viewDidAppear:animated:
  • viewWillDisappear:animated:
  • viewDidDisappear:animated:
相關問題