gpt4 book ai didi

iphone - 返回UINavigationController的第一个索引?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:49:04 25 4
gpt4 key购买 nike

我正在做一个使用 UINavigationController 的应用程序,我正在切换到其他 UIViewControllers,如下所示:

if(self.myViewController == nil){
MyViewController *aViewController = [[MyViewController alloc] initWithNibName:@"MyViewController" bundle:nil];
self.myViewController = aViewController;
[aViewController release];
}

AppDelegate *delegate = [[UIApplication sharedApplication] delegate];
[delegate.myNavController pushViewController:myViewController animated:YES];

我想这是在 UINavigationController 中创建了一堆 UIViewController,也许是索引数组?我想知道如何回头,而不必一一回头。

例如,我正在浏览几个屏幕,并使用我想在第一个导航索引处返回的按钮。我还想知道如何修改索引、查看、删除以及与此问题有关的任何内容。

对不起,如果我没有解释好。

最佳答案

您问了两个问题。

首先是,我如何回到我的第一个 View Controller 。正如@Thomas Clayson 和@ender 所回答的那样,您需要导航 Controller 对象的 popToRootViewControllerAnimated: 方法。

第二个是如何移动到 View Controller 堆栈中的特定索引。答案是,您可以显式设置 viewController 数组。因此,您可以拉出当前的 View Controller 列表,对其进行修改,然后将其设置回导航 Controller 堆栈。它会重置堆栈并让您移动到堆栈中的顶部项目。

因此:

NSMutableArray *controllers = self.navigationController.viewControllers;
[controllers removeObjectAtIndex:[controllers count] - 1]; //or whatever
[self.navigationController setViewControllers:controllers animated:YES];

关于iphone - 返回UINavigationController的第一个索引?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7516240/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com