我是新開發的iPhone應用程序。我現在要寫的應用程序非常簡單。是不是改變UIViewControllers的好方法?
我想要「屏幕」。爲此我創建了UIViewController
這兩個子類。第一個有一個按鈕 - 當它被按下時,我想將屏幕更改爲第二個。爲此,我想發送消息給共享的AppDelegate
對象,並在我的窗口中更改視圖。
也許這很重要: 第一個屏幕用於輸入我想連接的服務器的IP地址。所以這個屏幕只會在應用程序中出現一次
我是否正確?
我是新開發的iPhone應用程序。我現在要寫的應用程序非常簡單。是不是改變UIViewControllers的好方法?
我想要「屏幕」。爲此我創建了UIViewController
這兩個子類。第一個有一個按鈕 - 當它被按下時,我想將屏幕更改爲第二個。爲此,我想發送消息給共享的AppDelegate
對象,並在我的窗口中更改視圖。
也許這很重要: 第一個屏幕用於輸入我想連接的服務器的IP地址。所以這個屏幕只會在應用程序中出現一次
我是否正確?
要什麼的人已經加入一起去。你應該看看蘋果的'View Controller Programming Guide'(如果你還沒有的話)。它將爲管理視圖提供一些很好的見解,並提供不同方法的例子(推送,模態等)。
編輯
因爲它聽起來就像你想一次顯示一個視圖(沒有堆棧,沒有模式),那麼你應該看看在UITabBarController來幫助組織視圖控制器。這將允許您輕鬆地從一個切換到另一個。 Here是如何設置的詳細信息,您需要向下滾動到「標籤欄」部分。希望有所幫助!
您正在尋找在UIViewController中都發現這些API:
- [UIViewController presentModalViewController:animated:];
和
- [UIViewController dismissModalViewController:animated:];
我不確定我想要模態視圖,因爲第一個屏幕應該只顯示一次。 – Andrew 2011-01-31 21:50:44
這將是,如果ULL推更好,彈出viewControllers導航。
代碼示例:
-(IBAction) CallNumberClicked
{
static DialNumberViewController *viewController=nil;
if(viewController==nil)
viewController=[[DialNumberViewController alloc] initWithNibName:@"DialNumberViewController" bundle:nil];
[self.navigationController pushViewController:viewController animated:YES];
}
我這樣做的方式是使用協議和回調。當前的ViewController調用回原始的,原始的釋放「當前」的。
你是否使用任何導航控制器爲您的應用程序即:UINavigationController,UITabBarController)? – DerekH 2011-01-31 21:35:50
不,目前不。我想首先了解基本知識 – Andrew 2011-01-31 21:42:54