2011-05-10 33 views
0

我創建了我的登錄屏幕(兩個字段和一個按鈕)到MainWindow.xib。 經過一番觀察後,我想回到MainWindow.xib(登錄屏幕)。 我真的不明白如何再次調用MainWindow.xib?致電MainWindow.xib

任何幫助,將不勝感激。

謝謝 Snehal梅塔

回答

0

你不應該把一個登錄界面中的MainWindow.xib。讓它生活在它自己的視圖控制器中。然後,只要您認爲合適,您可以簡單地將該視圖控制器讀回窗口。

希望這會有所幫助。

+0

感謝您的答覆。事情是,我無法從視圖加載拆分視圖控制器,但只能從window.Thats爲什麼我在MainWindow.XIB中創建登錄頁面。 – user714236 2011-05-10 19:54:29

+0

聽起來不像是你的問題的適當解決方案。您可以將您的登錄控制器加載到右側視圖,並僅以縱向模式加載它,以便您不能看到左側視圖。還有其他方法來處理這個問題。 – Jamie 2011-05-10 20:13:50

0

您不要再次調用MainWindow.xib,只需關閉「某些視圖」即可使MainView再次可見。當然這意味着你首先在MainView上打開一些東西...

...所以我想真正的問題是你是如何使「某些視圖」可見的。常用的方法是使用'presentModalViewController'方法。下面是快速而骯髒的示例代碼,只給你一些建議:

打開「這個應用程序」從主視圖對話框:

- (IBAction)showInfo:(id)sender 
{ 
AboutViewController *controller = [[[AboutViewController alloc] initWithNibName:@"AboutViewController" bundle:nil] autorelease]; 
controller.delegate = self; 
controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal; 
[self presentModalViewController:controller animated:YES]; 
} 

和有關視圖告訴主視圖來關閉它:

- (IBAction)done:(id)sender 
{ 
[self.delegate aboutViewControllerDidFinish:self]; 
} 

和主視圖關閉約看法:

- (void)aboutViewControllerDidFinish:(AboutViewController *)controller 
{ 
[self dismissModalViewControllerAnimated:YES]; 
} 

爲了使這項工作,你定義一個協議在約視野頭:

@class AboutViewController; 

@protocol AboutViewControllerDelegate 
- (void)aboutViewControllerDidFinish:(AboutViewController *)controller; 
@end 

@interface AboutViewController : UIViewController 
@property (assign, nonatomic) id <AboutViewControllerDelegate> delegate; 
- (IBAction)done:(id)sender; 
@end 

,並採取到主視野頭使用:

@interface MyMainViewController : UIViewController <AboutViewControllerDelegate> 
@end 

好了,我希望你有想法,可通過搜索「@protocol」找到休息和可能甚至「關於查看iPhone的示例代碼」等