gpt4 book ai didi

iphone - PopToViewController 显示正确的 ViewController,但显示错误的导航栏

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

我有一个应用程序,第一个 View 是登录屏幕,用户名和密码用于在应用程序周围进行身份验证。如果身份验证过程中出现问题,用户将返回到登录屏幕,但如果当用户按下导航栏中的后退按钮时出现问题,应用程序正确显示登录屏幕,但导航栏将从它应该显示的 View 中显示按钮。

示例:如果用户在 View B 上按下后退按钮,应用程序应该显示 View A,但出了点问题,应用程序将显示登录屏幕,但导航栏是来自 View A 的。

我已经尝试了几件事,但最接近的是:在 View B 的 ViewWillDisappear 中:

        NSArray * nc = [self.navigationController viewControllers];
[self.navigationController popToViewController:[nc objectAtIndex:0] animated:YES];

它给出了上面描述的结果。

最佳答案

在您的 LoginController 中覆盖 viewWillAppear: 方法并根据需要设置导航栏按钮:

-(void) viewWillAppear:(BOOL) animated
{
[super viewWillAppear:animated];

//Example :
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"AText" style:UIBarButtonItemStyleBordered target:self action:@selector(anAction)];
}

如果你不使用 ARC,记得给 leftBarButton Item 添加 autorelease :

self.navigationItem.leftBarButtonItem = [[[UIBarButtonItem alloc] initWithTitle:@"AText" style:UIBarButtonItemStyleBordered target:self action:@selector(anAction)] autorelease];

关于iphone - PopToViewController 显示正确的 ViewController,但显示错误的导航栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13045026/

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