[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创建一个屏幕堆栈. *** 纵这个堆栈(从卡片中间滑出卡片?)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)