前回(No.4 小遣いアプリ2-アウトレットとアクション-)作ったアウトレットとアクションのオブジェクトを使っていよいよコーディング!
ちなみに私、仕事ではC言語を使ってミドルソフトの開発をしています。JavaやC++も使ったことあるけど、オブジェクト指向の考え方っていうのが少し苦手かもしれない。今の時代珍しいかも。
iPhoneの開発に使うのは Object-C ってやつで、C言語をベースにオブジェクト指向の考え方をプラスしたもの、ということみたいなんだけど関数の呼び方からなんか独特なんでなれるのが大変かもしれない。
と、前置きが長くなりましたがはじめます。
Xcode よりコーディングするソースを選ぶ。
ここでは「WalletSampleViewController.m」を選択。このソースに処理を追加する。追加するのは下の画像の四角で囲っている部分。今までの行程で私と全く同じオブジェクトの命名や配置をしていれば、このコードをそのまま貼付けても使えます。

---------------------------------
int kodukai = [[kekka text] intValue];
int buynow = [[nedan text] intValue];
float taxrate = 0;
/* 押されたボタンから消費税率を求める */
switch ([tax selectedSegmentIndex]) {
case 0:
taxrate = 1.05;
break;
case 1:
taxrate = 1;
break;
default:
break;
}
/* 消費税を求め現在の小遣いを算出 */
kodukai = kodukai - ( buynow * taxrate );
/* 現在の小遣いを表示 */
[kekka setText:[NSString stringWithFormat:@"%d", kodukai]];
---------------------------------
コーディングの細かいことはここでは割愛するけど(ちょろちょろ追記します)、Object-C 独特なところ(というか私がわからなかった)は、メソッドの呼び出し方。前回アウトレットでつけた名前としては次のものがあるじゃないですか。
・mono → 買い物したものの名前入力欄(インプット)
・nedan → 買い物したものの金額入力欄(インプット)
・tax → 消費税率選択ボタン(消費税あり/消費税なし)
・myAction1 → 決定ボタン
・kekka → 小遣い表示(アウトプット)
これを上記のソースで使っているわけなんですけど(あ、mono は用意しておいて使ってない・・・)、メソッドの呼び出し方が変。
例えば、tax オブジェクト の selectedSegmentIndex は、tax のどちらのボタンが選択されているかが入っている。(消費税込み:0、消費税なし:1)これを参照するには・・・
JavaとかCの構造体だとこんな感じ?:tax.selectedSegmentIndex
Object-Cだと:[tax selectedSegmentIndex]
なんじゃこりゃー初めてみる。
慣れなそう・・・
なお、「/* */」で囲まれた部分はコメント。
「//」でもコメントになるけど、C言語でUNIXの場合、「//」だとコンパイルエラーになるOSがあるんで私は「/* */」を使う。Objwct-C は GCC でもコンパイルできて、LinuxでのビルドOKってことみたいなんだけど、Linux だと「//」でも大丈夫なんだっけかな?そしたらあまり気にしないでもいいかもしれない。
なんだか余談ばっかりできちんと説明していなくて申し訳ないんですが・・・ビルドして実行してしまおう!!
Xcode の左上から、iPhone 用のシュミレーターを使うか iPad 用のシュミレーターを使うか選択する。(ここでは iPhone 用シュミレーター使う)
で、「ビルドと実行」をクリック。

で、できたーー!!!

割と簡単にできたという感想です。
みなさんはどうでしょう?
これくらいの知識でも、アイディアと見た目さえしっかりしてれば売れるアプリが作れるような気がしてきた(妄想)。
売れてるアプリ、アイディアもそうだけど、見た目もきれいだよなあ。次はそこらへん勉強していこうと思います。
ではまた。
ちなみに私、仕事ではC言語を使ってミドルソフトの開発をしています。JavaやC++も使ったことあるけど、オブジェクト指向の考え方っていうのが少し苦手かもしれない。今の時代珍しいかも。
iPhoneの開発に使うのは Object-C ってやつで、C言語をベースにオブジェクト指向の考え方をプラスしたもの、ということみたいなんだけど関数の呼び方からなんか独特なんでなれるのが大変かもしれない。
と、前置きが長くなりましたがはじめます。
Xcode よりコーディングするソースを選ぶ。
ここでは「WalletSampleViewController.m」を選択。このソースに処理を追加する。追加するのは下の画像の四角で囲っている部分。今までの行程で私と全く同じオブジェクトの命名や配置をしていれば、このコードをそのまま貼付けても使えます。

---------------------------------
int kodukai = [[kekka text] intValue];
int buynow = [[nedan text] intValue];
float taxrate = 0;
/* 押されたボタンから消費税率を求める */
switch ([tax selectedSegmentIndex]) {
case 0:
taxrate = 1.05;
break;
case 1:
taxrate = 1;
break;
default:
break;
}
/* 消費税を求め現在の小遣いを算出 */
kodukai = kodukai - ( buynow * taxrate );
/* 現在の小遣いを表示 */
[kekka setText:[NSString stringWithFormat:@"%d", kodukai]];
---------------------------------
コーディングの細かいことはここでは割愛するけど(ちょろちょろ追記します)、Object-C 独特なところ(というか私がわからなかった)は、メソッドの呼び出し方。前回アウトレットでつけた名前としては次のものがあるじゃないですか。
・mono → 買い物したものの名前入力欄(インプット)
・nedan → 買い物したものの金額入力欄(インプット)
・tax → 消費税率選択ボタン(消費税あり/消費税なし)
・myAction1 → 決定ボタン
・kekka → 小遣い表示(アウトプット)
これを上記のソースで使っているわけなんですけど(あ、mono は用意しておいて使ってない・・・)、メソッドの呼び出し方が変。
例えば、tax オブジェクト の selectedSegmentIndex は、tax のどちらのボタンが選択されているかが入っている。(消費税込み:0、消費税なし:1)これを参照するには・・・
JavaとかCの構造体だとこんな感じ?:tax.selectedSegmentIndex
Object-Cだと:[tax selectedSegmentIndex]
なんじゃこりゃー初めてみる。
慣れなそう・・・
なお、「/* */」で囲まれた部分はコメント。
「//」でもコメントになるけど、C言語でUNIXの場合、「//」だとコンパイルエラーになるOSがあるんで私は「/* */」を使う。Objwct-C は GCC でもコンパイルできて、LinuxでのビルドOKってことみたいなんだけど、Linux だと「//」でも大丈夫なんだっけかな?そしたらあまり気にしないでもいいかもしれない。
なんだか余談ばっかりできちんと説明していなくて申し訳ないんですが・・・ビルドして実行してしまおう!!
Xcode の左上から、iPhone 用のシュミレーターを使うか iPad 用のシュミレーターを使うか選択する。(ここでは iPhone 用シュミレーター使う)
で、「ビルドと実行」をクリック。

で、できたーー!!!

割と簡単にできたという感想です。
みなさんはどうでしょう?
これくらいの知識でも、アイディアと見た目さえしっかりしてれば売れるアプリが作れるような気がしてきた(妄想)。
売れてるアプリ、アイディアもそうだけど、見た目もきれいだよなあ。次はそこらへん勉強していこうと思います。
ではまた。





