У меня есть пользовательский UINavigationController (YAKMainNavigationController
) с включенной панелью инструментов, показанной на основе иерархии моего приложения.Я пытаюсь использовать его в качестве панели вкладок для переключения между различными страницами в моем приложении с помощью пользовательских кнопок (YAKFadeButton
).Я использую приведенный ниже код в YAKMainNavigationController.swift
для добавления элементов на панель инструментов:
override func viewDidLoad() {
addToolbarItems()
}
func addToolbarItems() {
var items = [UIBarButtonItem]()
items.append(UIBarButtonItem(customView: YAKFadeButton(normalImage: UIImage(named: "computer"), highlightedImage: UIImage(named: "computer1"), fadeDuration: 0.5, alignment: UIStackView.Alignment.center)))
items.append(UIBarButtonItem(customView: YAKFadeButton(normalImage: UIImage(named: "bell"), highlightedImage: UIImage(named: "bell1"), fadeDuration: 0.5, alignment: UIStackView.Alignment.center)))
items.append(UIBarButtonItem(customView: YAKFadeButton(normalImage: UIImage(named: "message"), highlightedImage: UIImage(named: "message1"), fadeDuration: 0.5, alignment: UIStackView.Alignment.center)))
items.append(UIBarButtonItem(customView: YAKFadeButton(normalImage: UIImage(named: "user"), highlightedImage: UIImage(named: "user1"), fadeDuration: 0.5, alignment: UIStackView.Alignment.center)))
setToolbarItems(items, animated: false)
setToolbarHidden(false, animated: false)
toolbar.tintColor = UIColor.white
print(items)
print(toolbarItems as Any)
}
Элементы не отображаются по причине, которую я не могу различить.Я захватил иерархию пользовательского интерфейса, и элементы даже не находятся там, но массив toolbarItems
содержит элементы.Вывод консоли для приведенного выше кода выглядит следующим образом:
[<UIBarButtonItem: 0x1028272a0> view=<YAK.YAKFadeButton: 0x102825a20; baseClass = UIControl; frame = (0 0; 0 0); layer = <CALayer: 0x283059740>>, <UIBarButtonItem: 0x102829370> view=<YAK.YAKFadeButton: 0x1028288f0; baseClass = UIControl; frame = (0 0; 0 0); layer = <CALayer: 0x28305a060>>, <UIBarButtonItem: 0x10282aba0> view=<YAK.YAKFadeButton: 0x10282a120; baseClass = UIControl; frame = (0 0; 0 0); layer = <CALayer: 0x28305a860>>, <UIBarButtonItem: 0x10282cc00> view=<YAK.YAKFadeButton: 0x10282c180; baseClass = UIControl; frame = (0 0; 0 0); layer = <CALayer: 0x28305b060>>]
Optional([<UIBarButtonItem: 0x1028272a0> view=<YAK.YAKFadeButton: 0x102825a20; baseClass = UIControl; frame = (0 0; 0 0); layer = <CALayer: 0x283059740>>, <UIBarButtonItem: 0x102829370> view=<YAK.YAKFadeButton: 0x1028288f0; baseClass = UIControl; frame = (0 0; 0 0); layer = <CALayer: 0x28305a060>>, <UIBarButtonItem: 0x10282aba0> view=<YAK.YAKFadeButton: 0x10282a120; baseClass = UIControl; frame = (0 0; 0 0); layer = <CALayer: 0x28305a860>>, <UIBarButtonItem: 0x10282cc00> view=<YAK.YAKFadeButton: 0x10282c180; baseClass = UIControl; frame = (0 0; 0 0); layer = <CALayer: 0x28305b060>>])
Любая помощь с отображением этих кнопок очень ценится, спасибо.