Xcodeェ……
うん、本当はスクショとれればよかったんだけどね。
そんな余裕なかったからね。
……仕事中のことだったしね。
数日前、仕事に追われていて、とんでもないことが起きた。
Xcodeでstoryboard上のパーツからソースコード上にctrl押しながらピロピロピロってIBOutlet置いたのよ。
変数名書いて、connectボタンをポチッとな!
ってやったらさ……。
Xcode、落ちやんの。
なんだよもー、っつって、Xcode再起動させて、もっかい同じことするやん?
Xcode、落ちやんの。
仕方がないからさ、Mac再起動するやん? で、Xcode再起動させて、もっかい同じことするやん?
Xcode、落ちやんの。
え、もうどういうことなん?
困惑しかないわあ……。
storyboardのDocument Outlineのパーツ選んで引っ張ってもダメ。
storyboardのDocument Outlineのパーツをctrl押しながらクリックして出る、黒地に白抜きのメニューからReferencing Outlets
の+からドラッグしてもダメ。
ユーティリティエリアのConnections Inspector
から引っ張ってもダメ。
ダメ、ダメ、ダメ。
なんかね、クラッシュログ見るとね、swiftコードジェネレーターが、とかゆうてんのよ。
なんのことやねん……。
なんか、何が悪いとか、メッセージ残してから逝けや。
ダイイングメッセージ残してから逝けや。
何か他に、ソースにIBOutlet
貼っ付ける方法、ないんかな、ってググってたら、ありました。
ありがとうグーグル先生!
@IBOutlet weak var hogeButton: UIButton!
- ソースファイルにコードを記述する
- パーツの置いてあるコントローラをstoryboardのDocument Outlineから選択
- ユーティリティエリアの
Connections Inspector
を選択 Outlets
の中に先ほどソースに書いたhogeButton
があるので、この+ボタンから、Interface Builder
上のパーツへ向けてドラッグ
そう、クラッシュログにちゃんとヒントはあったんです。
GUI操作でIBOutlet
のSwiftコードを生成しようとしたらクラッシュした、っつー意味だったんですね。
……まあ、それがなんでなのかはわかりませんけれども。
締め切り間際で時間のない中、1時間近く費やしましたけど、なんとかなってよかった。
もしお困りの方がいらっしゃいましたら、ぜひ一度お試しあれ。