我是來自Flex/Actionscript開發的Objective-C新手。Objective-C中的Actionscript樣式事件?
我有一個名爲MyAppDelegate的UIApplicationDelegate符合委託的iPhone應用程序 - 它有一個UIWindow。
而不是直接向窗口添加按鈕,標籤和什麼東西,我想我應該爲每個屏幕製作一個UIViewController的子類。當顯示該屏幕時,我將相應控制器的視圖作爲子視圖添加到窗口中。當應該顯示另一個屏幕時,我應該彈出窗口中的任何其他視圖並添加新視圖。希望我得到了一切正確的迄今...
我的意圖是使每個視圖控制器只知道自己的事情,所以我們說我想調用視圖A從視圖B,在ActionScript中我會添加一個按鈕發射一個事件,這個事件會被視爲A的擁有對象(可能是應用程序),它可以採取適當的行動(移除視圖A,實例化視圖B並顯示它)。
如何在Objective-C中做到這一點?
你描述的基本概念/模式是響應者鏈。 iOS SDK爲您實現了內部功能,允許您指定「無」目標(無目標)和控件(按鈕等)的操作。該按鈕的動作將通過響應者鏈「冒泡」,從而允許每個對象有機會處理它。 – ohhorob 2010-07-07 05:27:23
謝謝。這實際上是我最終使用的答案。然而,不能「檢查」它;-) 即使這個頁面上的其他答案都是正確的,這一切都取決於應用程序和情況... 我做了什麼:在頁1的筆尖文件中,我點擊First Responder,去了「Responder Identity」並添加了一個新的動作「goPage2:」。然後,我用第一頁上的一個按鈕勾住了它。在page1控制器中,我能夠捕捉到事件。然而,我把捕捉功能移到了「父」控制器上,並且工作正常。足夠現在,我猜... – Jonny 2010-07-08 05:24:28