init?(barButtonItem: UIBarButtonItem) create nil BadgeHub
west5hell opened this issue · 2 comments
west5hell commented
When the barButtonItem create by storyboard, init?(barButtonItem: UIBarButtonItem) create not nil BadgeHub.
But when the barButtonItem create by code in viewDidLoad function, init?(barButtonItem: UIBarButtonItem) create a nil BadgeHub, but barButtonItem is not nil.
let hub = BadgeHub(barButtonItem: testItem)
hub?.increment()
let leftItem = UIBarButtonItem(title: "Badge", style: .plain, target: self, action: nil)
navigationItem.leftBarButtonItem = leftItem
let itemHub = BadgeHub(barButtonItem: leftItem)
itemHub?.increment(by: 10)
hub create by Storyboard's UIBarButtonItem ,itemHub create by code UIBarButtonItem: leftItem
hub is not nil, itemHub is nil
justdan0227 commented
every get an answer to this? I refactored my code and am now also running into this?
justdan0227 commented
I think it has to do with the fact that it uses a private call to get the view from the bar button item:
value(forKey: "view")
Might try BadgedBarButtonItem