SideMenu вызывает ViewController программно - PullRequest
0 голосов
/ 08 октября 2018

Я использую swift с jonkykong / SideMenu и вместо этого создаю меню программно для создания меню с жестким кодом.

Я добавляю меню с помощью:

SideMenuTableViewController.swift

override func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
        if let menu = MyMethod.getMenu() {
                for (index, value) in menu.enumerated() {
                    //All the logic to create the view with the label

                    let tap = UITapGestureRecognizer(target: self,
                                                     action:  #selector (self.selectMenuItem (_:)))
                    subItem.addGestureRecognizer(tap)

                    subItem.addSubview(subLabel)
                    container.addSubview(subItem)
                }

            }
    return container
}


@objc public func selectMenuItem(_ sender: AnyObject) {

    let value = sender.view!.customValue

    switch value {
        case "item1":
            let vc = instantiateViewController(identifier: "mainViewController", type: MainViewController.self)
            displayVC(viewController: vc)

        case "item2":
            let vc = instantiateViewController(identifier: "secondVC", type: SecondViewController.self)
            displayVC(viewController: vc)
        default:
            print("")
    }
}

public func displayVC<T: UIViewController>(viewController:T){
        let backItem = UIBarButtonItem()
        backItem.title = ""
        if(self.navigationController?.navigationBar.barTintColor == UIColor.white){
            backItem.tintColor = UIColor.black
        }
        navigationItem.backBarButtonItem = backItem

        self.navigationController?.navigationItem.backBarButtonItem = backItem
        self.navigationController?.pushViewController(viewController, animated: true)
    }

Но каждый раз, когда я запрашиваю боковое меню, которое я получаю в консоли:

Несбалансированные вызовы, чтобы начать / закончить переходы появленияfor.

И не вызывает ли viewDidLoad viewDidAppear или viewWillAppear.

Существующий способ исправить это?

...