导航菜单swift 2.2

时间:2017-05-30 10:39:35

标签: ios swift xcode menu swrevealviewcontroller

我使用 SWRevealViewController 创建了菜单,它连接到整个应用程序但是当我在任何视图中从菜单中选择任何行时,它首先转到主页。 任何人都知道为什么以及如何解决这个问题。

问题的根源是我使用dispatch_async(dispatch_get_main_queue(),{ )}

enter image description here

菜单代码

extension UIViewController {
func addMenu() {
    navigationController?.navigationBar.barTintColor = UIColor.redColor()
    var image : UIImage = UIImage(named:"menu")!

    if (varView == 0) {

    }
    else if (varView == 1) {
        dispatch_async(dispatch_get_main_queue(),{

             let update = storyboard!.instantiateViewControllerWithIdentifier("updateuser") as! UpdateUserProfileViewController          

              self.navigationController?.pushViewController(update, animated: false)
      )}
    }

  }
  }

2 个答案:

答案 0 :(得分:0)

你做过什么与UI相关的事情你必须在主队列中。您的代码应如下所示

DispatchQueue.main.async { 
       let update = storyboard!.instantiateViewControllerWithIdentifier("updateuser") as! UpdateUserProfileViewController          self.navigationController?.pushViewController(update, animated: false)
}

答案 1 :(得分:0)

我通过使菜单静态(为所有菜单行创建了8个单元格)解决了这个问题,然后从每个菜单行中创建了segue。