iphone - 单点触控 : PopToViewController and then pushing one causes views clashing on iPod/iPhone

标签 iphone ios xamarin.ios monotouch.dialog

我需要一次弹出 3 个 Controller ,所以我使用导航 Controller 中的 PopToViewController 方法,然后将一个新 Controller 插入其中。它导致 View 重叠。 两个 Controller ,它被弹出的和被推送的都是 DialogViewControllers。除了这种情况只发生在 iPod/iPhone 上,在 iPad 上它工作正常。

代码很简单:

NavigationController.PopToViewController(NavigationController.ViewControllers[NavigationController.ViewControllers.Count() - 1 - numberOfViews], animated);
NavigationController.PushViewController(viewController);

有什么帮助吗?

最佳答案

与其同时出栈和入栈,不如替换栈

UIViewControllers[] newStack = new UIViewController[NavigationController.ViewControllers.Count()-numberOfViews+1];
for (int i = 0; i < NavigationController.ViewControllers.Count()-numberOfViews; i++)
{
    newStack[i] = NavigationController.ViewControllers[i];
}
newStack[NavigationController.ViewControllers.Count()-numberOfViews] = viewController;
NavigationController.SetViewControllers(newStack, true);

关于iphone - 单点触控 : PopToViewController and then pushing one causes views clashing on iPod/iPhone,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13849310/

相关文章:

ios - Swift CoreData 编辑/更新实体,当它只有 1 个实例时

ios - 警报延迟 - iOS swift

xamarin.ios - MonoTouch/Xamarin.iOS 中与 UITableViewController/UISearchDisplayController 相关的崩溃

iphone - 如何在 objective-c -iPhone 应用程序中搜索 nsmutablearray

iphone - iPhone 上表格 View 中单元格的奇怪行为,如果一个单元格导致另一个单元格发生变化,则会发生变化

iphone - 如何将注释标题传递给另一个 View Controller

ios - 如何在 Swift3 中将 Any 转换为字典

iphone - iOS 6 问题将 MPMediaItem 转换为 NSData

ios - 更新到 Xamarin touch 8.2 并使用 mvvmcross

ios - Xamarin iOS Designer xib 在文档大纲中缺少 'Files Owner' 、 'ViewController' 对象