Xcode 7.3でSwift 2.3を使用しています。私はUITableViewControllerを持つUINavigationControllerを持っています。ナビゲーションバーの中央にあるボタンを作成するためにナビゲーションバーのナビゲーション項目のtitleViewを設定しようとしています。TitleView of UITableViewControllerのUINavigationItemイメージが表示されない
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)
私はSwift 2を使用しています。コードはSwift 2に変換するのが簡単でしたが、違いはforState:.Normalの代わりにfor:.normalです。それはそれが動作しなかった、私はまだボタンまたはタイトルテキスト( "ボタン")の視覚的な指示を取得しないと述べた。 – Shreck