Xcode 4.2 で storyboard や xib で配置した UIButton などの GUI パーツ(部品)にソースコードからアクセスするためのアウトレット(プロパティ)を作る

用語がよくわかんないので、適当にキーワードを並べてみた。IB (Interface Builder) でパーツを配置したとき、その配置したパーツに UIViewController とかから直接アクセスする方法をメモ。わかったら簡単なんだけど、これ分かんないと調べる方法が無い気がする。

  • .storyboard や .xib の項目を選んで、GUI を作る画面 (IB の画面) を出しておく。同時に、参照したいクラスのヘッダファイルを表示させる。同時に表示させるには、右上の Edit モードで真ん中のモード(Show the Assistant Editor)を選び、右側のウィンドウ(というか区画?)を触った状態で、.h ファイルを触れば表示される。メニューの View → Assistant Editor から Add Assistant Editor を選んで表示させることもできる。
  • 下の画面では UIButton をひとつ配置した状態で、ViewController クラスからこのボタンを参照できるようにしようとしているところ。ボタンを Control を押しながらクリックして、ViewController.h の中までドラッグする。すると、右に Insert Outlet と書かれた黒い小さいウィンドウが出る。


  • この状態でマウスのボタンをはなすと、Outlet の情報を書くウィンドウが出るので、好きな変数名を入れる。ここでは myButton と入れてる。


  • Connect と書かれたボタンを押すと property としてアウトレットが登録される。これで、あとは myButton という名前でソース内で参照できる。

これわからんわ、まじで。入門本とかやっぱちゃんと読むべきなのか。まあ、IB なしでずっと作ってて問題なかったから調べる気があんましなかったけど、偶然やりかたを発見してやっと IB も使ってみようという気になった。