如何dismissModalView控件工作,iPhone

时间:2012-05-17 14:01:04

标签: iphone

假设我有ViewA和ViewB,我正在使用模态视图控制器,如

[ViewA presentModalViewController:ViewB animated:YES]

然后为了解雇ViewB,

[self dismissModalViewControllerAnimated:YES] 

被调用

问题

self 在这里是什么意思。它是ViewB或ViewA。

我们应该把代码放在哪里?它应该在ViewA还是ViewB中。

4 个答案:

答案 0 :(得分:1)

文档说:

  

“呈现视图控制器负责解除视图   它呈现的控制器。如果在显示的视图上调用此方法   但是,控制器本身会自动转发消息   呈现视图控制器。“

因此,self是包含您引用的代码的任何对象,但无论如何,该消息最终都由ViewA处理。

(请注意,文档表示这是一种弃用的方法。)

答案 1 :(得分:0)

视图应该被驳回。它应该在View的视图控制器中,因为它是模态视图控制器。

答案 2 :(得分:0)

来自apple doc的

“呈现视图控制器负责解除它所呈现的视图控制器。但是,如果在呈现的视图控制器本身上调用此方法,它会自动将消息转发给呈现视图控制器。”

很明显

答案 3 :(得分:0)

dismissModalViewController应放入要关闭的模态视图控制器中。它负责解雇自己。

那就是说,你应该不再使用模态函数了。您应该使用presentViewController和dismissViewController。模态函数已弃用,可能很快就会删除。