如何在不附加Nav Bar的情况下返回初始ViewController

时间:2016-04-12 04:55:25

标签: ios swift navigation

我正在使用Facebook API,我正在尝试实施logout功能。点击UITableViewCell后,我想返回原始登录页面。我尝试从VC创建一个正常的segue到ViewController.swift(即初始登录页面),但它附加了navigationBar,这不是我想要的。

我尝试过几件事。这是我目前的代码

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
        if indexPath.row == 5 {
            NSUserDefaults.standardUserDefaults().setObject(nil, forKey: KEY_UID)
            NSUserDefaults.standardUserDefaults().setObject(nil, forKey: SELECTED_SPORTS)
            let loginViewController: UIViewController = ViewController()
            self.navigationController?.popToRootViewControllerAnimated(true)
        }
    }

这只是让我回到之前的VC,这不是我想要的。我尝试了Unwind Segues,但我不允许拖到Storyboard的Exit按钮,这也让人感到困惑。

2 个答案:

答案 0 :(得分:2)

如果您不想navigationBar,请隐藏它。

self.navigationController?.setNavigationBarHidden(false, animated: true)

答案 1 :(得分:0)

这可以帮助你兄弟这样做。

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) 
{

        if indexPath.row == 5 
        {
            NSUserDefaults.standardUserDefaults().setObject(nil, forKey: KEY_UID)
            NSUserDefaults.standardUserDefaults().setObject(nil, forKey: SELECTED_SPORTS)
            let LoginVCOBJ = UIStoryboard(name: "MainStoryboard", bundle: NSBundle.mainBundle()).instantiateViewControllerWithIdentifier("loginViewControllerblVC_OBJ") as! loginViewController
            self.navigationController?.viewControllers = [LoginVCOBJ]

        }
}