xim*_*iao 2 uiviewcontroller ios
如果 ViewControllerA 嵌入到 navigationController 中,并且 ViewControllerB 由 ViewControllerA 模态呈现。
当我打印 ViewControllerB 的presentingViewController 属性时,我发现presentingViewController 指向导航控制器,而不是ViewControllerA。
但我认为如果presentingViewController 指向ViewControllerA 更合理。
但我认为如果presentingViewController指向ViewControllerA更合理
问题是,你认为什么是合理的并不重要。你看到的是它实际上是如何工作的。你的工作是接受和理解它,而不是不同意它。
导航控制器是呈现视图控制器,因为它是根视图控制器。这是一个全屏演示,因此导航控制器是视图控制器,其视图被呈现的视图控制器的视图替换。
事实上,你present发送到视图控制器 A被传递到包含导航控制器。你可以告诉视图控制器 Apresent只是为了一种方便。
视图控制器 A 被 Apple 称为“源”视图控制器,因为它是present发送到的视图控制器,但无法从与视图控制器 B 的对话中了解到这一点。
(你可能想阅读我的在线书籍的这一部分,从句子开始,“呈现视图控制器......不一定是你发送到的视图控制器presentViewController:animated:completion:。”在我的书中,我将源视图控制器称为原始视图控制器主持人。)
| 归档时间: |
|
| 查看次数: |
821 次 |
| 最近记录: |