ツールバーにさまざまなものを統合してUIを整理しようとしていますが、完全に混乱しています。私の UI はかなり単純で特に動的ではないため、プログラムでコントロールを作成するのではなく、Interface Builder を使用しています。
私がこれまでにしたこと:
- 空のツールバーを追加しました。
- 以前に存在し、機能していた 2 つのボタンをツールバーにドラッグしました。彼らはクラスを UIButton から UIBarButtonItem に変更し、インスペクターには送信済みアクションまたは参照アウトレットがないように表示されるようになりましたが、View Controller の以前のアクションとアウトレット (タップに応答し、ボタンのラベルを設定) は引き続き機能します。
- ツールバーに直接新しいボタンを作成しました。通常の方法で ctrl を押しながらドラッグして、アクションとアウトレットを接続します。インスペクターは、このボタンのアクションとアウトレットを接続済みとして表示します。これは素晴らしいことですが、残念ながらどちらも機能しません。ボタンをクリックしてもアクションは呼び出されません。ボタンのラベルを設定しても、setNeedsDisplay を使用してツールバーを押してみた後でも、画面上で何も起こりません。
次に何を試せばよいかわかりません。グーグルは、Interface Bulder を介して UIToolBar を使用するのが難しくて混乱しているのは私だけではないことを示していますが、正確な問題の解決策は見つかりませんでした。
いくつかのボタンを整理するためだけに、GUI 全体をプログラムで作成することに頼りたくはありません。ツールバーの外側に Interface Builder ですべてのコントロールを作成し、それらを配線して機能させてから、それらをツールバーに移動することもおそらく機能しますが、それは面倒なことであり、何か問題が発生した場合はまだ賢明ではありません後で。