我正在构建一个电子商务应用程序,在 rightBarButtonItem 中包含购物车。我已经实现了扩展以在每个 UIViewControllers 中添加购物车 barButtonItem。我的 barButtonItem 在模拟器设备中正确显示(包括 iPhone 6s、iPhone SE 和 iPhoneX 模拟器) 。但它没有显示在我的物理设备 iPhone 6s 上。有人可以帮助我如何追踪这个问题吗?感谢您的关注 这是我的代码
extension UIViewController{
func addCartBarButtonItem(){
let cartButton = UIButton(type: .custom)
cartButton.setImage(UIImage(named:"cart"), for: .normal)
cartButton.widthAnchor.constraint(equalToConstant: 28.0).isActive = true
cartButton.heightAnchor.constraint(equalToConstant: 28.0).isActive = true
cartButton.addTarget(self, action: #selector(self.goCheckOutController), for: .touchUpInside)
let cartBarButtonItem = UIBarButtonItem(customView: cartButton)
cartBarButtonItem.addBadge(number: CartDataManager.loadItems().count)
self.navigationItem.rightBarButtonItem = cartBarButtonItem
}
}
最佳答案
试试这个,
var rightSearchBarButtonItem : UIBarButtonItem?
func addCartButtonToNavigationBar(){
self.rightSearchBarButtonItem = UIBarButtonItem(image: #imageLiteral(resourceName: "cart") , style: UIBarButtonItemStyle.plain, target: self, action: #selector(goCheckOutController))
self.navigationItem.rightBarButtonItem = self.rightSearchBarButtonItem;
}
这段代码对我有用
关于ios - rightBarButtonItem 未显示在物理设备上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48769213/