ios – iPad:presentModalViewController创建一个屏幕堆栈. *** 纵这个堆栈(从卡片中间滑出卡片?)

ios – iPad:presentModalViewController创建一个屏幕堆栈. *** 纵这个堆栈(从卡片中间滑出卡片?),第1张

概述iPad:presentModalViewController创建一个屏幕堆栈.你可以 *** 纵这个堆栈(从卡片中间滑出卡片吗?) [self presentModalViewController:navigationController1 animated:NO];[self presentModalViewController:navigationController2 animated:NO] iPad:presentModalVIEwController创建一个屏幕堆栈.你可以 *** 纵这个堆栈(从卡片中间滑出卡片吗?)

[self presentModalVIEwController:navigationController1 animated:NO];[self presentModalVIEwController:navigationController2 animated:NO];[self presentModalVIEwController:navigationController3 animated:NO];

上面的代码创建了一堆3深的屏幕. “navigationController3”是可见的,如果使用“[self dismissModalVIEwController]”将其解除,则可以看到navigationController2.

虽然THREE是可见的,但我希望将两个滑出堆叠/甲板的中间,这样当三个被解雇时,ONE将会被看到.

解决方法 根据Apple doc here,堆栈是一种双链表.它看起来像这样:

self.modalVIEwcontroller                  --> navigationController1   navigationController1.modalVIEwController --> navigationController2          navigationController2.modalVIEwController --> navigationController3

navigationController1.parentVIEwcontroller--> self       navigationController2.parentVIEwcontroller--> navigationController1              navigationController3.parentVIEwcontroller--> navigationController2

问题是你不能搞砸这些属性,因为它们是只读的.
我看到的唯一解决方案是在关闭navigationcontroller3时解除navigationController2.
例如,在navigationController3类中尝试:

-(voID)vIEwWilldisappear:(BOol)animated{    [super vIEwWilldisappear:animated];    self.parentvIEwcontroller.    //navigationController2             parentvIEwcontroller.    //navigationController1                dismissModalVIEwControllerAnimated:NO];}
总结

以上是内存溢出为你收集整理的ios – iPad:presentModalViewController创建一个屏幕堆栈. *** 纵这个堆栈(从卡片中间滑出卡片?)全部内容,希望文章能够帮你解决ios – iPad:presentModalViewController创建一个屏幕堆栈. *** 纵这个堆栈(从卡片中间滑出卡片?)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1001360.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存