Interface Builderを使ってアプリを作成する! (5/5)
作成:2011-03-17 08:12
更新:2011-03-17 08:12
更新:2011-03-17 08:12
■UIViewControllerクラスの実装
さあ、残りは「MyIAppViewController.m」(または、◯◯ViewController.m)のソースコードの作成です。下のリスト欄に掲載しておきますので、このように記述をしてください。
ここでは、いくつかのポイントがあります。まず、プロパティの記述部分を見てください。以下のようになっていますね。
続いて、メソッドの実装を見てみましょう。ここでは3行の割と簡単な文が記述されていますね。それぞれの働きをざっと整理しましょう。
とても簡単ですが、これで入力されたテキストを使ってLabelに表示する、簡単なサンプルが出来ました。実際に「ビルドと実行」ボタンを使って、エミュレータで動作を確認してみましょう。ちゃんとボタンをクリックすると、テキストが変わるでしょう?
ここでは、いくつかのポイントがあります。まず、プロパティの記述部分を見てください。以下のようになっていますね。
@dynamic label1;プロパティは、@dynamicというコンパイラディレクティブをつけて記述します。これは、実行時に動的にアクセサが生成される場合に使うものです。GUIコンポーネントを接続するプロパティは、静的にアクセサを用意することができませんので、必ず@dynamicを指定しておきます。
@dynamic field1;
続いて、メソッドの実装を見てみましょう。ここでは3行の割と簡単な文が記述されていますね。それぞれの働きをざっと整理しましょう。
id str = [field1 text];textはUITextFieldに記述されているテキストをNSStringとして取得するものです。これで書かれたテキストを変数に取り出します。
id msg = [NSString stringWithFormat:@"Hello, %@!!",str];NSStringのstringWithFormat:を使い、"Hello, ◯◯!!"というテキストを生成します。
[label1 setText:msg];最後に、UILabelの表示テキストに変数を設定します。setText:は、引数のNSStringを表示テキストに設定するものです。
とても簡単ですが、これで入力されたテキストを使ってLabelに表示する、簡単なサンプルが出来ました。実際に「ビルドと実行」ボタンを使って、エミュレータで動作を確認してみましょう。ちゃんとボタンをクリックすると、テキストが変わるでしょう?
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
※MyIAppController.m #import "MyIAppViewController.h" @implementation MyIAppViewController @dynamic label1; @dynamic field1; - (IBAction)btn1Action:(id)sender { id str = [field1 text]; id msg = [NSString stringWithFormat:@"Hello, %@!!",str]; [label1 setText:msg]; } ……中略…… @end
※関連コンテンツ
「初心者のためのiphone/ipadプログラミング入門」に戻る