我正在編寫我的第一個iPhone應用程序,這是一個測試用例,可幫助我瞭解如何在此平臺上完成各項工作。所以我使用了標準的ModelViewController小部件並創建了我的應用程序。我把我的用戶界面放在默認視圖上,並在ViewController.m/.h文件中添加了所有的粘合代碼:事件處理程序,IBOutlet映射來改變我的控件的狀態等等。這一切都奏效了,並且沒有太長時間做。如何在我的iApp中顯示我的信息視圖
現在我想爲我的應用程序添加一個信息頁面。我添加了一個i按鈕到我的主頁並將其映射到一個空的處理程序toggleCreditsOpen :,然後爲我的項目「info.xib」創建了一個新視圖。我打開了界面構建器,並根據自己的喜好設置了我的視圖(儘管我更喜歡如果信用可以動態加載而不是直接在視圖中加載,後面我會擔心,因爲我很確定很容易更改文本,我只是希望從本地化的資源文件加載也很容易,但那不是我的問題)。我在我的info.xib中創建了一個完成按鈕,並將其映射到另一個處理程序toggleCreditsClosed。所以現在我有兩個空的處理程序:一個當信息按鈕被按下,和一個當在信息窗口完成按鈕被按下:
- (IBAction) toggleCreditsOpen: (id) sender {
// ???
}
- (IBAction) toggleCreditsClosed: (id) sender {
// ???
}
如果任何人都可以解釋這兩個函數發生的事情,我會不是唯一的感激之情,因爲我會在即將發佈的博客文章中提供這些說明,解釋如何做到這一點,以便人們不必像我一樣在桌子上猛撞頭,試圖將最終的觸摸輸入到他們的應用程序中: !
感謝您的意見。因此,由於您建議應創建一個新的實現文件,因此我這樣做了:我創建了InfoViewController,並創建了一個關聯的.m文件,.h文件和一個新的.xib文件,從中將所有視圖設置複製到了「界面」構建器中。 – TimeHorse 2010-08-06 14:45:33
然後,我將代碼拆分成您建議的文件,取消註釋initWithNibName:bundle:方法,修改代碼以添加bundle參數(如nil)並嘗試使用。不幸的是,我的應用程序能夠分配InfoViewController,但是當它嘗試調用presentModalViewController時:animated:它崩潰而沒有解釋。翁,爲什麼一定要這麼混淆! – TimeHorse 2010-08-06 14:46:09
啊,錯過了我的一個小部件的框架。必須啓動gdb才能看到錯誤。好笑,那個。所以,讓我再運行一些測試,如果我能做到這一點,我會給你充分的信任! – TimeHorse 2010-08-06 16:20:27