我有一个BarCodeScanner-viewController,可以从3个不同的视图调用它。我的应用程序还具有一个tabbarController。问题是,标签栏从两个viewController中隐藏,而第三个则始终显示tabbarController,而在cameraMode(barCodeScanner)中。
我试图在viewDidLoad(),viewDidAppear()和viewWillAppear()两者中都设置“ self.tabBarController?.tabBar.isHidden = true”,并在viewWillDisappear()上将其更改为false
我还测试了将'scanner.hidesBottomBarWhenPushed = true'设置为无结果。
// working:
setUpBackButton(withTitle: NSLocalizedString("button_cancel",comment: ""))
let scanner = BarCodeScanner()
self.navigationController?.pushViewController(scanner,animated: true)
scanner.callback = { result in
// code with result
}
// working:
setUpBackButton()
let scanner = BarCodeScanner()
scanner.modalPresentationStyle = .overCurrentContext
self.navigationController?.pushViewController(scanner,animated: true)
scanner.callback = { result in
// code with result
}
// NOT WORKING (i.e. not hiding the tabbarController):
let scanner = BarCodeScanner()
setupBackButton()
scanner.modalPresentationStyle = .overCurrentContext
self.navigationController?.pushViewController(scanner,animated: true)
scanner.callback = { result in
// code with result
}
在第三个示例中,我也不会隐藏选项卡。