2011-12-13 64 views
1

我添加了應用程序委託類按鈕單擊的視圖。就像這樣:如何從視圖控制器視圖返回到目標c中的應用程序委託控制器視圖?

在UnifeyeMobile_templateAppDelegate.mm:

- (IBAction)onBtnImageTracking:(id)sender { 

// create our UnifeyeMobileViewController and present it 
UnifeyeMobileImageTrackingViewController* unifeyeMobileViewController = [[UnifeyeMobileImageTrackingViewController alloc] initWithNibName:@"UnifeyeMobileImageTrackingViewController" bundle:nil]; 
unifeyeMobileViewController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve; 
[viewController presentModalViewController:unifeyeMobileViewController animated:YES]; 
[unifeyeMobileViewController release]; 
} 

而且我想從加UnifeyeMobileImageTrackingViewController的視圖返回主應用程序委託類視圖。我放了一個按鈕。但我不知道如何做到這一點?請幫幫我。

+1

'[self dismissModalViewControllerAnimated:YES]'? – Jano

回答

0

在模型viewcontollers代碼,只需調用

[self dismissModalViewControllerAnimated:YES]; 

對於來自用戶,您希望使用解僱模式視圖(例如按鈕觸摸事件)的相互作用。

+0

謝謝,它的工作原理,但我有一個內存問題,我得到了dealloc方法中的錯誤。 –

0

這可能,如果你想要一些特殊的行爲添加到隱藏你的模式視圖兩種方式取決於做到:

簡單(模態視圖內)

[self dismissModalViewControllerAnimated:YES]; 

如果你想添加一些自定義效果來隱藏模式視圖,讓UnifeyeMobileImageTrackingViewController持有對主視圖的某種引用。

@protocol ModalViewDelegate <NSObject> 

- (void) hideModal:(UIViewController*) modalViewController; 

通過這種方式,你可以在UnifeyeMobileImageTrackingViewController這樣設置modalViewDelegate你展示它之前:這可以通過你的主視圖實現一些代表的協議,它可能看起來像這樣實現

unifeyeMobileViewController.delegate = self; 

讓主視圖中hideModal的實現以您喜歡的方式隱藏模態視圖。

希望這有助於:)

+0

感謝所有:) –

相關問題