navigationController popToRootViewControllerAnimated在iOS 8中不起作用

时间:2015-07-10 06:29:31

标签: objective-c ios7 ios8 uinavigationcontroller

我在UINavigationController中嵌入了一个登录UIViewController,用户输入UserID / Password然后单击[Login]按钮,如下所示:

2-textfields和UIButton,当用户点击按钮时我运行代码:

static void CompareRows(DataTable original, DataTable modified)
{
    foreach (DataRow row1 in modified.Rows)
    {
        bool isModified = true;
        var array1 = row1.ItemArray;
        foreach (DataRow row2 in original.Rows)
        {
            var array2 = row2.ItemArray;

            if (array1.SequenceEqual(array2))
            {
                isModified = false;
            }
        }
        if (isModified)
            row1.SetModified();
    }
}

现在我的问题出现在我使用模拟器或iOS 8设备时 我将看到Log-message但ViewController不会弹出,因为当我使用iOS 7的模拟器/设备时,视图将正常弹出到root。 为什么不赢   -(void)btLoginTapped:(id)sender{ [doLogin]; NSLog(@"Login Successful.") [self.navigationController popToRootViewControllerAnimated:YES]; } 在iOS 8+中工作,但它可以在iOS 7+中运行吗? 请注意,我已将Animated标志更改为NO,我也尝试过: [self.navigationController popToRootViewControllerAnimated:YES]但问题仍然存在?!!

感谢任何输入。谢谢。

1 个答案:

答案 0 :(得分:0)

试试这个

[self dismissViewControllerAnimated:YES completion:nil]; 

而不是popToRootViewControllerAnimated如果您可以推送根视图控制器,那么它将起作用。 希望它有所帮助。