BarButtonItem EdgeInsets不起作用
问题描述:
我想添加一个导航栏rightBarButtonItems在按钮之间,但它现在正在工作的一个填充。BarButtonItem EdgeInsets不起作用
这里的按钮创建代码与给定的插图:
lazy var previewBarButtonItem: UIBarButtonItem = {
let buttonItem = UIBarButtonItem(title: "Preview", style: .plain, target: self, action: #selector(handlePreview))
buttonItem.tintColor = UIColor.black
buttonItem.setTitleTextAttributes([NSFontAttributeName: UIFont.systemFont(ofSize: 14)], for: .normal)
buttonItem.imageInsets = UIEdgeInsetsMake(0, -15, 0, 15)
return buttonItem
}()
override func viewDidLoad() {
super.viewDidLoad()
setupRightNavItems()
}
fileprivate func setupRightNavItems() {
navigationItem.rightBarButtonItems = [submitBarButtonItem, previewBarButtonItem]
}
你能给为什么这不工作的一个暗示?
由于
答
我设法解决这个问题,只是增加了一个fixedSpace栏按钮项目在中间如下:
1)除去任何EdgeInsets 2)添加以下固定空间:
fileprivate func setupRightNavItems() {
let spacing = UIBarButtonItem(barButtonSystemItem: .fixedSpace, target: nil, action: nil)
spacing.width = 25 //change to your desired space width
navigationItem.rightBarButtonItems = [submitBarButtonItem, spacing, previewBarButtonItem]
}