【问题标题】:How to bring out the viewController after menu item is selected?选择菜单项后如何调出viewController?
【发布时间】:2019-09-12 10:04:34
【问题描述】:

在我选择菜单中的一个项目后,我试图调出视图控制器。目前,当我按下某些东西时,它只会更改页面,但它会卡在右侧。我怎么把它拿出来。

这是我写的代码。

class ContainerVC: UIViewController {

var sideMenuOpen = false
@IBOutlet weak var mainView: UIView!


override func viewDidLoad() {
    super.viewDidLoad()

    NotificationCenter.default.addObserver(self,
                                           selector: #selector(toggleSideMenu),
                                           name: NSNotification.Name("ToggleSideMenu"),
                                           object: nil)
  }

@IBOutlet weak var sideMenuConstraint: NSLayoutConstraint!

@objc func toggleSideMenu() {
    if sideMenuOpen {
        sideMenuOpen = false
        sideMenuConstraint.constant = -270

    } else {
        sideMenuOpen = true
        sideMenuConstraint.constant = 0
    }
    UIView.animate(withDuration: 0.3) {
        self.view.layoutIfNeeded()
    }
} 

}

这就是我在 SideMenuVC 中写的内容

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
    print(indexPath.row)
   // NotificationCenter.default.post(name: NSNotification.Name ("ToggleSideMenu"), object: nil)

        switch indexPath.row {
        case 0: NotificationCenter.default.post(name: NSNotification.Name ("ShowProfile"), object: nil)
        case 8:    //signs out of Firebase
        try? Auth.auth().signOut()
        //signs out of Facebook
        FBSDKAccessToken.setCurrent(nil)

        let main = UIStoryboard(name: "Main", bundle: nil)
        let second = main.instantiateViewController(withIdentifier: "loginPage")

        self.present(second, animated: true, completion: nil)
    default: break

        //https://www.youtube.com/watch?v=Hl_Re_KLhcY
    }
}

这就是我在 HomeVC 中写的内容

 @IBAction func menuButton() {
    print("Toggle Side Menu")
    NotificationCenter.default.post(name: NSNotification.Name("ToggleSideMenu"), object: nil)
} 

我希望显示所选页面。

【问题讨论】:

  • 请添加截图
  • @MumtazHussain 我添加了截图

标签: uitableview menu side-menu


【解决方案1】:

只需将 NotificationCenter.default.post(name: NSNotification.Name ("ToggleSideMenu"), object: nil) 添加到您的 didSelectRowAt

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-18
    • 1970-01-01
    • 1970-01-01
    • 2018-12-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多