NavigationBarのいくつかの覚えなければならない細部の問題

1011 ワード

left、right barItemsとシステムのbarItemと画面の余白の違い
解決策:追加のbarItemを定義する
let spaceBarItem = UIBarButtonItem.init(barButtonSystemItem: .FixedSpace, target: nil, action: nil)
spaceBarItem.width = -12
self.navigationItem.leftBarButtonItems = [spaceBarItem, UIBarButtonItem.init(customView: textField)]

カスタムバックバックグラウンドItemの場合、システムの左スライドバックは無効になります.
解決方法:
let backBarButtomItem = UIBarButtonItem.init(image: UIImage.init(named: "backStretchBackgroundNormal"), style: .Plain, target: self, action:#selector(XcfBuyBuyBuyVIewController.navgationPop))      
self.navigationItem.leftBarButtonItem = backBarButtomItem    
self.navigationController!.interactivePopGestureRecognizer!.delegate = self

戻るボタンを非表示にし、左にスライドするとナビゲーションバーに3つのポイントが表示されます.
解決方法:空のleftBarを定義する
let leftBarView = UIView.init(frame: CGRectZero)
let leftBarItem = UIBarButtonItem.init(customView: leftBarView)
self.navigationItem.leftBarButtonItem = leftBarItem