我目前加載NIB文件象下面這樣的代碼:如何加載UITabBarController?
Login *monLogin = [[[Login alloc] init] autorelease]; [self presentModalViewController:monLogin animated:YES];
,但應用程序是的TabBar應用(xcode的模板),並是假設還加載底部菜單。 我該如何加載這個包含UITabBarController的NIB文件?
我目前加載NIB文件象下面這樣的代碼:如何加載UITabBarController?
Login *monLogin = [[[Login alloc] init] autorelease]; [self presentModalViewController:monLogin animated:YES];
,但應用程序是的TabBar應用(xcode的模板),並是假設還加載底部菜單。 我該如何加載這個包含UITabBarController的NIB文件?
我對您的其他question的回答可能有幫助。但是現在我對你想要做的事有些困惑。讓我知道,我可以進一步幫助你。
模式視圖將不包含TabBar,因爲TabBar擁有每個選項卡所代表的視圖控制器。爲什麼你想要在登錄視圖中包含TabBar?如果你真的想在你的模式視圖中使用TabBar,那麼你需要將你的「登錄」視圖控制器放在TabBar視圖控制器中,然後以模態方式呈現TabBar視圖控制器。
但是,我建議您在應用程序的主要部分中包含TabBar,並且在沒有TabBar的情況下呈現「登錄」視圖。一旦用戶完成登錄,您可以關閉「登錄」視圖,該視圖將用戶返回到應用程序的主要部分。
要關閉模態視圖控制器,請設置一個委託系統(通過實用程序模板查看它是如何工作的)。如果現在設置自己的代理協議太困難,那麼您可以同時使用一種解決方法。在用戶「登錄」視圖控制器代碼中,用戶成功登錄後,可以向父視圖控制器(呈現模態視圖的那個控制器)發送消息以消除其模態視圖(您的「登錄」視圖) 。
[self.parentViewController dismissModalViewControllerAnimated:YES];
雖然這是不好的形式。一旦你做到了,你應該使用委託回調讓父視圖控制器關閉模態視圖。
嘿,謝謝你的回答,這實際上工作非常好:)。現在你是否介意告訴我更多關於什麼是更好的方法?或者可以將我鏈接到文章或教程以使用委託回調使父視圖控制器關閉模態視圖? 非常感謝 – ahoura
請參閱適用於iOS的視圖控制器編程指南 - 模態視圖控制器部分。它談到有關模態視圖控制器的授權。以下是編寫自己的委託協議的一些基本指南:http://iphonedevelopertips.com/objective-c/the-basics-of-protocols-and-delegates.html和http://www.cocoanetics.com/2009/ 07/your-own-delegation-protocol/ – MattyG
非常感謝。你一直很有幫助。如果我需要你的幫助,我會在這裏發表評論。 – ahoura