はじめてのiOSアプリ開発

暗算ゲームの基本部分を作ってみよう

全334コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
必要な変数を追加して、暗算ゲームの基本部分を作って遊べるようにしましょう。
講師:
11:36

字幕

このレッスンでは 暗算ゲームの基本的な部分を実装して 遊べるようにしていきたいと思います まず ViewController.m というファイルを選択して プログラムを書き始めていきたいと思います 現在は ViewController の この viewDidLoad というメソッドが 一番上に書かれていますけれども アプリケーションが起動したときには この viewDidLoad という メソッドが呼ばれますので この中にアプリケーションの 初期設定について書いていこうと思います では この下に自分のプログラムの コードを追加していきましょう まずは 乱数を使って 問題を作成していきますので srandam という関数を使って 乱数の初期化を行います ( (unsigned)time(NULL) ) これは乱数を使う時の 決まりの定型文ですから このままで覚えて下さい そして srandam ( (unsigned)time(NULL) ) と書けたら これで乱数が使えるようになりましたから いよいよここで 問題を作成するための メソッドを今から 作っていきたいと思います ここでは問題を作るということで makeProblem というメソッドを 作っていきたいと思います 今 makeProblem を呼び出す メソッド呼び出しをここに書きました この makeProblem は 下の方に自分で作ります この様に - (void) と書きまして ここに makeProblem と言う名前の メソッドを追加します 追加しました では ここにまず 問題を作成するための 機能を作っていきたいと思います 問題を作るためには 左側の数と右側の数を それぞれ作る必要がありますので これを乱数を使って作成します まず value1 = random( ) % 10 + 1 この様に書くと random( ) % 10 の所で 0~9の乱数が作成されて そこに1を足しますので 1~10 の乱数がこの value1 の中に入ります 同じようにして value2 = random( ) % 10 + 1 と書くと これで更に value2 も同じように 1~10 までの乱数で問題が作成できます では これで value1 と value2 が 用意できましたので この2つの値を ラベルの上に表示したいと思います value1Label というラベルの上に setText メソッドを使って @( ) で この value1 を 文字列に変換します この @( ) の中に value1 と整数を書いて stringValue を呼び出すというのが 整数を文字列に変換するための 一番簡単な方法です 同じようにして self.value2Label と書いて ここに setTextを呼び出します 今度は value2 を 文字列に変換しますので value2 をこうして stringValue を呼び出して変換します これでアプリケーションを 一度 実行してみると 問題が作成できたのが分かると思います 「実行」ボタンを押しました そうすると このように 1 + 1 と ちょっと簡単すぎる問題が出ていますけど 一度終了して もう一度起動しなおすと 6 + 10 なんとなく格好が付いたように見えます では 更にここに対して このボタンの方も 正解が入力できるように していきたいと思います 今度はこの value1 と value2 を基にして 正解を作成します 正解はもちろん― answer = value1 + value2 と書くことで作れるのですが 正解と同時に間違った答えも作らないと ゲームになりませんので 間違った答えもそこに 合わせて用意します どうするかと言うと まず ここに「正しい答え」と コメントを付けておきました 今度は answer2 の方で answer を基にして ここに― (randam ( ) % 3 + 1) として これを answer に足し合わせます 要するに 正解の値が出たとして その正解に 1~3の乱数を足して これを間違った答えにするのです ものすごく振れ幅を大きくして +10 とか +20 とか 大きな値を出してしまうと 間違いが分かりやすく なってしまいますので 1とか 2とか ちょっとだけ違うくらいの方が 間違いを誘いやすいので よりゲームっぽくなると思います このようにして answer と answer2 が用意できましたので 次にこの answer と answer2 を それぞれ ボタンに 割り当てていきたいと思います 実際には左と右と どちらにも 正解が来るようにしたいのですが まずは左のボタンに正しい答え 右のボタンに間違った答えを 表示するようにしたいと思います self.leftButton に対して setTitle というメソッドを 呼び出すことによって タイトルをセットします @(answer ) これを stringValue に変換して そして この forState の所に UIControlStateNormal と書くことで ボタンのタイトルをセットできます ちょっと長いのですけども これも定型文ですので 全く同じことを rightButton に対しても 実行します rightButton に対して setTitle で answer2 の方を stringValue に変換して ControlStateNormalで 右の値を出します こうすることで 一度実行してみます このように 「3+4」に対して 左の方が正しい答えとして「7」 そして右の方が違った答えとして 「8」が表示されるように なっていることがわかります では この「7」と「8」が 逆になるような機能を 追加していきたいと思いますので プログラムに戻ります 今度は上の所に戻っていただいて @implementation ViewController と書いた後ろに { を追加して ここに int 型で answerPos と言う 変数を追加します ここでポジションを表す Pos がここに付いているので これは 0(ゼロ)であれば― 左の方が正しい そして 1が来ていたら右の方が正しい ということを表す変数として この answerPos を 用意したいと思います この answerPos は この answer を answer と answer2 を作った後に answerPos = random ( ) % 2 とすると これで正しい答えか 間違った答えか どっちが左に来るか すぐに分かるようになりますから これで if (answerPos = = 0) もしも左の方に 正しい答えを表示する時には さっきの通りに このプログラムを書きます そして もしも逆に 右の方に正しい答えが来る時には これをコピー & ペーストで 下の方に貼り付けます 今 Command + C でコピーしたものを Command + V で 2行貼り付けました そして 左の方のボタンに answer2 が表示されるようにして 右の方のボタンに answer が表示されるように 調整します これで左の方と右の方に 正しい答え 間違った答えが ランダムに 交互に 表示されるようになりました では 最後 ボタンが押された時に 正しい答えだったかどうかということを チェックする機能を実装したいと思います それを実装するのは この buttonTapped です ボタンが押された時には ここに sender という引数が 1つありますけれども この sender と言うものの中に 左の方のボタンか 右の方のボタンか と言う情報は入ってきています ですので もしも この sender ボタンが押された時に selfLeft ボタンからやってきた場合 そして そうではなくて else を書いて 右ボタンが押されていた場合に応じて もしも左ボタンが押された時は answer の Pos が 0(ゼロ)だったら正解 ということで answerPos = 0 の時 Correct!!(正解)と表示します そして そうでなかった時 間違いですから No... と表示します 同じように 今度 右のボタンが押されていた時には answerPos は 1になっているはずですから 右が押されていて なおかつ answerPos が1だった時には Correct!! 正しかったと そうでない場合には― No... と表示されるようにします これでアプリケーションの実装が 完成しましたので 一度 実行して確認しておきましょう 「実行」ボタンを押します そうすると このように 「4+4」という問題が表示されました 左の「9」を押すと 間違っていますので ここに No... と表示されます 右に「8」と表示されていますので この「8」をクリックしますと 今度は Correct!! と表示されて これで正しい答えか 間違っている答えか 適切に判断できるように なっていることが分かります このレッスンでは 暗算ゲームの基本部分を実装しました

はじめてのiOSアプリ開発

このコースではXcodeを使ったiOS用アプリの開発に必要な基礎知識を学びます。Xcodeの基本的な使い方から本格的なゲーム制作のためのSprite Kitを用いた制作方法まで、カウントダウンタイマーやスピード暗算ゲームなど3つの簡単なiOS用アプリを作りながら説明します。このコースを見れば、本当に必要なアプリ開発の知識を着実に身に付けられるでしょう!

5時間55分 (52 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 2,990
発売日:2015年06月04日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。