iOS8 NavigationController后退按钮显示不应该在哪里

时间:2014-09-30 07:12:13

标签: uinavigationcontroller ios8 xcode6

在应用程序中,我有一个带有登录表单的根ViewController,它检查用户是否标记了“自动登录”复选框,并且上次登录成功。 如果是:ViewController继续自动登录例程并执行push到MainMenuViewController。 如果不是:用户必须输入他的登录凭证并点击登录按钮,登录后才会执行相同的segue。

在“手动”登录的情况下,一切正常,但在执行自动登录的情况下,我在MainMenuViewController的导航栏上获得非功能性“后退”按钮(没有后退箭头)它不应该出现的地方,并且在下一个segue后退按钮没有显示之后,但它应该是。此外,从下一个segue返回后(使用后滑动手势)一切都恢复正常。

在iOS7中,这很好用。

this is non functional button which appears 摘自代码:

在MainMenuViewController中我有viewDidLoad

self.navigationItem.hidesBackButton = YES;

LoginViewController 登录方式

...
if([self processLogin:username password:password]){
    [self goToMainMenu];
} else {
...

Segue方法

-(void)goToMainMenu {
    [self performSegueWithIdentifier:@"toMainMenu" sender:self];
}

1 个答案:

答案 0 :(得分:0)

我认为你应该通过在swift或.m文件中编程来解决它。 例如,通过实现自动登录,您应该标记登录状态。 在goToMainMenu函数中,您可以按照以下方式执行此操作。

(void)goToMainMenu()
{
    if(flag) {
        [self performSegueWithIdentifier:@"toMainMenu" sender:self];
    }
    else {
        [self performSegueWithIdentifier:@"toOtherView" sender:self];
    }
}