在我的模態視圖控制器我有包括模式視圖控制器:方法
[self dismissModalViewControllerAnimated: YES];
在呈現視圖控制器我重寫dismissModalViewControllerAnimated一個按鈕的處理方法:如下:
-(void) dismissModalViewControllerAnimated: (BOOL)animated
{
NSLog(@"dismiss");
[super dismissModalViewControllerAnimated: animated];
}
當按鈕被觸摸時,按鈕處理方法被調用,但dismissModalViewControllerAnimated:override似乎沒有被調用:NSLog(@「dismiss」);語句不會被調用,並且方法內的斷點不會被觸發。
我試圖
[[self presentingViewController] dismissModalViewControllerAnimated: YES];
但也不能工作。但是,模態視圖控制器不會被解僱。
任何想法可能會出錯?
這哪裏是委託財產,它實現什麼協議?我無法在UIViewController,UIResponder或NSObject中找到委託屬性。 – 2012-01-18 17:11:45
您可以添加您自己的委託方法,而不是委託屬性。我將在答案中提供一個粗略的例子。請等一下。 – 2012-01-18 17:24:08
我很感謝您花時間回答。我明白你現在在說什麼,但我不明白這一點。這似乎是一個複雜的方式傳遞給模態VC指向演示VC的指針。無論如何,你會從我的回答中看到,問題是解僱消息被髮送到導航控制器,而不是它包含的UIViewController。 – 2012-01-18 21:08:40