Я использую Swift 2.3 в Xcode 7.3. У меня есть UINavigationController с UITableViewController. Я пытаюсь установить titleView элемента навигации в панели навигации, чтобы создать кнопку по центру панели навигации.
indexTextBut — это UIButton, подключенный к раскадровке. Я попытался просто создать новую кнопку, и это не имело заметного значения. То, как я сейчас это делаю, кнопка есть, поскольку она ведет себя так, как должна, но без изображения. Я попытался просто установить поле заголовка в виде строки, но даже тогда я ничего не вижу. Я установил правый и левый barButtonItems, используя:
navItem.setRightBarButtonItems(barButtonItems, animated: false)
navItemArray.append(navItemCatDet)
self.navigationController?.navigationBar.setItems(navItemArray, animated: false)
Вот мой соответствующий код. Мой большой вопрос: почему я не вижу изображение кнопки, установленной в titleView. У него предустановленное поведение, и когда я нажимаю там, где оно должно быть, я получаю это поведение. Я пытался настроить рамку UIButton и его UIImageView, а также размер изображения UIImageView, но мне не повезло. Я включил строку о тонировании фона на всякий случай, если это связано, хотя я пробовал это с и без.
class MyTableViewController: UITableViewController, UITextFieldDelegate {
@IBOutlet weak var indexTextBut: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
var indexNavItemArray = [UINavigationItem]()
var indexNavItem = UINavigationItem()
indexNavItem.titleView = newButton
indexNavItemArray.append(indexNavItem)
self.navigationController?.navigationBar.barTintColor = UIColor(netHex:0xe63246)
self.navigationController?.navigationBar.setItems(indexNavItemArray, animated: false)