Ios UINavigationController在键盘出现时隐藏栏崩溃应用程序(SWIFT)
我正在使用几个故事板向用户展示我的观点。故事板都使用嵌入必要视图的UINavigationController打开 要为用户选择相应的情节提要,我在AppDelegate中运行一些逻辑,然后加载情节提要 AppDelegateIos UINavigationController在键盘出现时隐藏栏崩溃应用程序(SWIFT),ios,swift,uinavigationcontroller,navigationbar,Ios,Swift,Uinavigationcontroller,Navigationbar,我正在使用几个故事板向用户展示我的观点。故事板都使用嵌入必要视图的UINavigationController打开 要为用户选择相应的情节提要,我在AppDelegate中运行一些逻辑,然后加载情节提要 AppDelegate func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { let
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
let storyboard:UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let navigationController:UINavigationController = storyboard.instantiateInitialViewController() as UINavigationController
let rootViewController:UIViewController = storyboard.instantiateViewControllerWithIdentifier("Initial") as UIViewController
navigationController.viewControllers = [rootViewController]
self.window?.rootViewController = navigationController
}
一切顺利。但是,如果我勾选了UINavigationController在使用UITextField显示键盘时应隐藏该条的选项,则应用程序崩溃。但是,只有在iOS 8中。iOS 7运行平稳
显示键盘时隐藏导航栏
这是我得到的错误:
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[OS_dispatch_queue _hideForKeyboardAppearance]: unrecognized selector sent to instance 0x15d67540'
libc++abi.dylib:以NSException类型的未捕获异常终止
我猜,由于我加载故事板的方式,代表团不知怎么搞得一团糟。如果我通过手动隐藏导航栏
@IBAction func editTextFieldStart(sender: AnyObject) {
self.navigationController?.navigationBarHidden = true
}
一切顺利。我只是好奇为什么它不以另一种方式工作。它应该以另一种方式工作。苹果在其文档中表示,该属性仅适用于iOS 8.0及更高版本。Ashraf:我刚刚重新测试过。在iPhone4上运行正常,iPhone5在iOS8上崩溃。非常奇怪。你能再检查一下那些iOS版本吗?你看到的错误确实指向了@Ashraf所指出的。当然。Iphone4在7.1.2上运行。另一款设备,iPhone5运行在8.1.3上。该代码在iPhone5上崩溃。我可以建立一个小的测试项目,它缩小到我的问题,并上传它。