【发布时间】:2018-02-08 13:07:36
【问题描述】:
我想要 iOS 11 中这个位置的后退按钮。
到目前为止,我使用的代码 (iOS 10) 不适用于 iOS 11。
这是一个代码:
let barBtnNeg = UIBarButtonItem(barButtonSystemItem: UIBarButtonSystemItem.fixedSpace, target: self, action: nil)
barBtnNeg.width = -15.0
let btn: UIButton = UIButton(frame: CGRect(x: 0, y: 0, width: 30, height: 27))
btn.setBackgroundImage(UIImage(named: "BackArrow"), for: UIControlState());
// Was CustomStatusViewController Changed to ChatThreadInfoViewController
btn.addTarget(self, action: #selector(ChatThreadInfoController.backButtonAction(_:)), for: UIControlEvents.touchUpInside)
let barBtnBack = UIBarButtonItem(customView: btn)
self.navigationItem.leftBarButtonItems = [barBtnNeg, barBtnBack]
我在 iOS 11 中为此使用的代码:
let view = UIView()
view.frame = CGRect(x: 0, y: 0, width: 40, height: 27)
let btn: UIButton = UIButton(frame: CGRect(x:-14, y: 0, width: 30, height: 27))
btn.setBackgroundImage(UIImage(named: "BackArrow"), for: UIControlState());
btn.addTarget(self, action: #selector(RoomMessageController.leftNavBackButtonPressed(_:)), for: UIControlEvents.touchUpInside)
btn.center = CGPoint(x: btn.center.x,y :view.center.y)
let tap = UITapGestureRecognizer(target: self, action: #selector(RoomMessageController.leftNavBackButtonPressed(_:)))
view.addGestureRecognizer(tap)
view.isUserInteractionEnabled = true
view.addSubview(btn)
let leftButtonItem = UIBarButtonItem(customView: view)
//add view to nav bar
self.navigationItem.leftBarButtonItem = leftButtonItem
问题出在 iOS 11 中,有时使用上面的代码我无法正确点击按钮,也无法使用默认的后退按钮,因为我需要自定义操作?
【问题讨论】:
-
@DmitryKuznetsov WidthAnchor,HeightAnchor 不工作
标签: iphone swift ios11 uinavigationitem