2010-02-25 151 views
7

在iPhone中,我有一个tableview,并触摸单元格,我有一个方法调用presentModalViewController,并打开另一个视图,用电子邮件和这种东西。 当用户按下取消按钮时,调用上一个视图中的viewWillAppear方法。 到目前为止,这么好。但在iPad中,viewWillAppear只是第一次出现视图,任何人都知道这是一个错误还是对的? 我试图实施iPad viewWillAppear和presentModalViewController问题

- (void)navigationController:(UINavigationController *)navigationController didShowViewController:(UIViewController *)viewController animated:(BOOL)animated{ 

没有成功。

有没有人知道如何解决这个问题,而无需从头开始任何委托方法? 在此先感谢

+0

iPad上的导航控制器? – kennytm 2010-02-25 20:36:50

+0

是的,它的iPhone应用程序移植到iPad,所以我使用导航控制器,但我不认为这是这种情况,问题是viewWillAppear不被称为 – Wak 2010-02-25 20:44:24

回答

0

可能是一个错误,我会提交一个错误报告与苹果here

0

基于猜测,而不是读,测试或有用的东西真的,但因此不保密协议所涵盖...

是viewWillDisappear被称为当你presentModalViewController?它可能并不认为模态视图完全模糊了原始视图,因此(不像iPhone)同时存在?

3

由于模态呈现的视图控制器不一定完全覆盖iPad上的底层视图,因此viewWillAppear方法在所述模态视图控制器被解散时不会触发。我依靠委托方法向原始视图控制器通告模态视图控制器的操作。我认为这是最好的方式。

+1

**“我依靠委托方法向原始视图控制器发布模态视图控制器的操作。“**您能否详细说明这一点?我真的很困惑.. – 2012-03-09 12:24:44