有沒有一種方法來實現自己的機制來檢測何時dismissModalViewControllerAnimated消失?我試過viewdiddisappear,但是這並沒有被調用,因爲我認爲它只在子視圖從視圖中移除時纔會調用。對於模態的情況,我認爲iOS對待它們的方式不同。如何去檢測dismissModalViewControllerAnimated
任何想法?
我希望我的代表在此模式視圖被解除後執行一些操作。
謝謝。
有沒有一種方法來實現自己的機制來檢測何時dismissModalViewControllerAnimated消失?我試過viewdiddisappear,但是這並沒有被調用,因爲我認爲它只在子視圖從視圖中移除時纔會調用。對於模態的情況,我認爲iOS對待它們的方式不同。如何去檢測dismissModalViewControllerAnimated
任何想法?
我希望我的代表在此模式視圖被解除後執行一些操作。
謝謝。
使用NSNotificationCenter張貼通知您關閉視圖控制器前的委託方法。作爲觀察者添加您的其他視圖控制器。這是廣播事件的簡單方法。
所以你解僱前:
[[NSNotificationCenter defaultCenter] postNotificationName:@"DismissModalViewController"
object:nil];
[self dismissModalViewControllerAnimated:YES];
,然後在視圖控制器
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(yourCallback)
name:@"DismissModalViewController"
object:nil];
回調會是這樣的:
- (void) yourCallback
{
// some code to run when modal view controller is dismissed
}
添加被稱爲右側前dismissModalViewController
您可以使用父視圖控制器viewWillAppear
。通過父視圖控制器,我的意思是presentViewController
(或presentModalViewController
)
的接收器我找到了問題。
發出此調用的視圖控制器,我忘記設置代表是誰。
您能否詳細說明您正在嘗試檢測dismissModalViewControllerAnimated的位置?附註:dismissModalViewControllerAnimated:將被棄用;解除模態VC的新方法是dismissViewControllerAnimated:completion :(完成動畫時要執行的塊)。 – 2012-07-16 14:13:46