なんかわかった気がする。

HelloWorldとか、電卓とかでいろいろとやってきましたが、

コードを書くところとデザインとかするInterfaceBuilderの関係が少しわかった気がする。

一番最初やってたことは、
この回みたいに、あらかじめ画面に、ボタンやらラベルやらを設定しておいて、
 にボタンやらラベルの宣言を

~ViewController.h に

 IBOutlet UILabel *message;

とかと、イベントの宣言

 -(IBAction)actionButtonTapped:(id)sender;

をゴリゴリと書いて、青い線とか伸ばして、

~ViewController.m に

ボタンを押されたときの処理

  -(IBAction)actionButtonTapped:(id)sender{
   //ここに押されたときの処理を書く
 } 


を書いてました。

逆にこっちに入力すると・・・。


最後にボタンとかと、このようなactionButtonTappedと青い線で結んで、

それで、「ボタンが押されたらこの処理が実行される。」

みたいに作ってました。

でも、今回やってみてる方法の方がいい感じ!!なんとなくイメージが湧く!

なぜかというと、圧倒的にコードを書く量が少ないから。

方法はこう。

昔のHelloWorldで説明すると。
コードに書いた
 IBOutlet UILabel *message;
InterfaceBuilderで見ると、ここに書いてありました。

$無知の状態からiPhoneアプリ開発に挑んでみる-6-13-1

下の+ボタンで項目を追加します。
ここでは追加したときのまま、名前を「myOutlet1」と「myOutlet2」ってのを追加してみました。
$無知の状態からiPhoneアプリ開発に挑んでみる-6-13-2

で、つぎに File→Write Class Files...を選択します。

これはInterfaceBuilderで設定したことを、Xcodeへ反映させてます。
このようなウインドウが出てくるので、
無知の状態からiPhoneアプリ開発に挑んでみる-6-13-3
Saveをクリック、
無知の状態からiPhoneアプリ開発に挑んでみる-6-13-4
上書きでいいんで、Replaceをクリック。

無知の状態からiPhoneアプリ開発に挑んでみる-6-13-5
そうすると、確定されてmessageと同じような場所に入りましたね。

ちなみにコードの方をみると、、、
$無知の状態からiPhoneアプリ開発に挑んでみる-6-13-6
追加されてる!!!!

UILabel じゃなくて、id になってるけど、これは問題ないらしい。
詳しくわかんないけど、問題ないらしい。知りたい人は調べてねw


同じようにイベントの宣言もこうしてできます。
無知の状態からiPhoneアプリ開発に挑んでみる-6-13-7
さっきは OutLets のとこに設定したけど、今回は、Actions のところ。

無知の状態からiPhoneアプリ開発に挑んでみる-6-13-8
で、デフォルトの myAction1: として、保存すると。。

無知の状態からiPhoneアプリ開発に挑んでみる-6-13-9

追加されてる!!!!

そして、ボタンとアクションの接続の仕方は、
File's Ownerを右クリックしてから直接、接続したいやつを選んで
画面のパーツへ青い線を延ばします
無知の状態からiPhoneアプリ開発に挑んでみる-6-13-10
この例では、mYAction1: をえらんで、ボタンまでのばしてます。

無知の状態からiPhoneアプリ開発に挑んでみる-6-13-11
最後に、どの操作がされたときにどの操作をしたときに実行するか選んでます。
これは「ボタンを押して話した時」(Touch Up Inside)です。
こうして、、、


実装するところ。~.m を見ると、
$無知の状態からiPhoneアプリ開発に挑んでみる-6-13-12
ほら、追加されてる!!!

ここにボタンが押された時の処理を書きます。

ということで。とくにコードを書かなくても、InterfaceBuilderでうまいことやれば、
勝手にコードを書いてくれることを発見しました!!


前回はすいませんねぇ。

「無知からの」っていうことでどうぞお許しを・・・。

新しいXcodeには言ってた場所からこの項目は消えてるみたいなんですよ。

新しいXcodeからは

InterfaceBuilderの
Library→Classes→Outlets で表示・設定できるみたいです。

$無知の状態からiPhoneアプリ開発に挑んでみる-6-12-2
こんな感じ。
あ、言い忘れましたが、今回は「Toolsbox」って名前で作ってます。

でもいろいろ調べてると、「Class Outlets」で設定しなくてもできるみたい。

というより、今までやってた方法でもいいっぽい。
そらそーだ。今までそれでやってきた。
でも、どっちがメジャーなやり方なのか?

今までの方法とは、
コード側のヘッダファイルにIBOutlet,IBActionを記述しといて保存しておいてから。
File's Owner右クリックでパーツへ接続する方法。

どっちがやりやすいか自分なりに試してみよーーっと。

 > いろんなツールを使う1
 > いろんなツールを使う2
 > いろんなツールを使う3(★この記事★)
 > いろんなツールを使う4
 > いろんなツールを使う5
 > いろんなツールを使う6
 > いろんなツールを使う7
 > いろんなツールを使う8~

にほんブログ村 IT技術ブログ iPhoneアプリ開発へ
にほんブログ村

こんばんわ。

ワールドカップの開幕戦みましたか?

いやいやいや、イイ試合でしたね~。
日本もまずいい試合をしてほしい。見てて興奮するような。
勝っても負けても誰も文句は言わないよ。勝ってくれたらそりゃうれしいけど。

ということで、たくさんのツールを使ったアプリを作ってみるということで、
参考にさせていただいたサイトはこれです。

目指せ!iPhoneアプリ開発エキスパート


です。これの第2回の2ページめの最後に乗ってるやつ。
これは実はAppStoreで公開されてるんですよねー。

ということは実機でも動かせるし、開発行程もお勉強できるということです。

ちょっと全体を見渡していると、今までやってきた方法(本でみながらHelloWorld!)となんかちがう。。

では一回このサイトに習って作っていこうと思います。
作り方比べられるし。

いきなり問題発生!


サイトで説明してあるような項目がない・・・。

やっぱりXcodeかなんかのバージョンの違い?
サイトは2008年12月の記事だし。。


$無知の状態からiPhoneアプリ開発に挑んでみる-6-12-1

記事とおりに進めていくと、
ほんとはここに「Class Outlets」なる項目が存在しているはずなんやけど。。。

ない。

ただどこかで間違えて自分のやり方がマズかったのか、記事のバージョンが古いから

項目が違うだけなのか・・・。

もうちょっと調べてみよう。

出だしでつまづくとは。。

ではー(´・ω・`)

 > いろんなツールを使う1
 > いろんなツールを使う2(★この記事★)
 > いろんなツールを使う3
 > いろんなツールを使う4
 > いろんなツールを使う5
 > いろんなツールを使う6
 > いろんなツールを使う7
 > いろんなツールを使う8~