SlideShare a Scribd company logo
iPhoneアプリ開発入門
 XcodeのStoryboardで画面を作ろう!




       2013年2月3日(日)
     iPhone開発初心者向け資料   +α
自己紹介
twitter ID : itokami1123

お昼の仕事はHTML5/CSS3/JavaScriptです。

Webの仕事なんですけどクライアント側処理
をメインにしてます。

何かお仕事があれば是非どうぞ!!

iPhoneアプリは通勤中に作ってます。
iPhoneアプリ作りのきっかけ



最初は新しい仕事の為(転職の為)

2011年まで古い技術(Java1.4とCOBOLとメー
カ独自データベース製品など)しか触った事が
なく段々と将来に不安になりました・・・
そこでHTML5とiPhone開発の勉強を
    独学で始めました。
福岡にはhtml5+α@福岡や
iDevQ(iOS Developer Community)
    など素敵な勉強会があって
  色々と助けてもらいました。

        勉強会の検索は
   http://azusaar.appspot.com/
          がお勧めです!
おかげさまで
無事転職出来ました。


 素敵な職場です。
 感謝してます。
今でもiPhoneアプリを作る理由

作るのが楽しい!

子供向けに学習ソフトを作っています。どう
やったら子供達が楽しく苦手なものを克服出
来るのかを考えるのがとても楽しいです!

iPhoneさえあればどんな子にでも学習のチャ
ンスを与える事がでます!
宣伝です!
http://www.itokami1123.com/soft/ で
   色々ソフトを公開してます!

             リジェクト中
少し悩みが。。

福岡でもAndroidは集まって開発するグループ
があるんですけどiPhoneアプリ(特に初心者
向け)の集まりは少ないんです。

福岡のiPhoneアプリ制作者の集まりができた
らいいなぁ。。
そこで

iPhoneアプリ開発者が少しでも増えたらいい
なと思い、入門を説明したいと思います!
(難しいツッコミは、ご勘弁を。。)

この資料ではメニューとゲーム2画面のじゃ
んけんゲームを作りたいと思います。
まずは。。


Xcodeをインストールしてください!

すみません。。説明は省略しますね。
Xcodeを起動



Xcodeのアイコンをクリックします!


今日は Version 4.5.2 を使用します。
新規作成




Create a new Xcode projectをクリックしま
す。なんだか英語が一杯ですね。。
アプリの雛形選択




今回はSingle View Applicationを選んでみまし
た。
初期入力




      今回のアプリに関する情報をいれます。

      上二つチェックをつけて Nextを押します。
めも:Company Identifierは、ドメイン名を逆さにしたものが推奨されているようです。
(例:example.comの場合は、com.exampleとなる)
ソース管理?




とりあえず気にせずチェックをはずして

Createボタンを押します!
じゃ∼ん




出て来ました!
いきなり動かす!



再生ボタンをクリックすると。。
なにもでません。。




でもiPhoneらしくものが出て来ましたね。

これが iOSシミュレータです!
メニュー作り!
 さっそくメニューを作ってみましょう!




Storyboardのファイルをクリックすると
この白い画面が最初に出てた画面みたいですね。
    さっそく編集してみましょう。
右下に色々あるよ




  背景を作ってみます。
Image Viewをドラッグします。
画像を選ぶ




Imageで画像を選べるみたいですけど
    登録が必要ですね。
画像を登録




画像が入っているフォルダを
ドラッグして投げ込みます!
画像が登録されます。



 Copyにチェックをつけると
 このアプリのソースの方に
 png画像がコピーされます
背景画像



前に置いた背景に画像をつけました!
タイトルをつけよ∼
     背景と同じ様に
     Image Viewを
     ドラッグします




   png画像を指定します
そういえば
 いっつもUse Autolayoutを
   OFFで作ってます。
(使い方が分かりません。。)


        そして
   タイトルの高さ幅、
   位置を指定します
スタートボタン




Round Rect Buttonをドラッグします!
ボタンを編集
  Customを選ぶと
  画像がつけれます。
メニューが出来たので
続いてゲーム画面を作りましょう!
ゲーム画面の枠を作る




 ViewControllerをドラッグ!
補足:拡大と縮小




   右下の虫眼鏡で
   切り替えます。
ゲーム画面の背景




ゲーム画面もメニュー画面と
同じ様に作ります。
操作ボタン


               Round
                Rect
               Button
              をドラッグ

ゲームの操作ボタンを置きます。
ぐー、ちょき、ぱーの3つです。
ボタンの画像設定




typeをcustomにしてImageを設定します!
では画面遷移を作って行きましょう!
画面遷移




ctlを押しながらドラッグすると線が!
画面遷移2




 modalを選ぶと
矢印ができました。
動かしてみましょう∼
メニュー画面の上にゲーム画面が表示されます!
突然ですが
  残念なお知らせです。


こっから先はプログラムがないと
  ゲームになりません。
Storyboardとコード




 Storyboardの画面とコードは
 どうやってつながってるの?
紐づけたいViewCotrollerを選んで




 Classと書いている所に指定すればOK
それではゲーム画面用のプログラムを
   用意してみましょう!
File -> New -> Cocoa Touch ->
Objective-C class を選んで Next!
ViewControllerを作成




ゲーム画面用としてGameViewControllerを作成
  注意:Subclass of は UIViewController
そのままcreateをクリック
ゲーム画面のViewControllerのClassに
 GameViewController設定します。
勝ち負けの表示




勝敗を表示するLabelを貼ります。
最初は非表示




HiddenをOnすると
 非表示になります
相手の手




相手の手をImageViewで配置して
   Hiddenにしておきます
ここまでで動かしてみましょう!
hiddenは表示されない事が確認出来ます。
hidden(非表示)の勝ち負けのラベルなど
表示されていない事が分かりますね!
それではじゃんけんのボタンと
プログラムを繋いでみましょう!
じゃんけんボタン

         「Assistant」ボタン


   Storyboard右上に
   ある人の顔みたいな
   アイコンを押します。
右側にソースが




右側に設定したGameViewControllerが
       出てきました!
難しそうな文字がいっぱいですが気にせず
じゃんけんボタンをctlを押しながら
@interfaceと@endの間にドラッグします。
ConnectionをAction(動作)
TypeをUIButton(ボタン)
EventをTouch Up Inside(ボタンを触った)
ArgumentsをSender(押されたボタン)
NameはjankenDidPush(好きな名前)にします。
jankenDidPushと言う
関数が出来ました!
他のじゃんけんボタンは
さっき作った関数名にくっつけます。
どのじゃんけんボタンを
押しても同じ関数を呼ぶ様になりました。
相手の手


 じゃんけんですので
相手の手が必要ですね!
arc4random()%3 って書くと0から2の範囲
で適当な数値を返してくれます。
じゃんけんボタンを押した時の処理の
先頭にかきましょう!
hiddenで隠していた手を表示する為には
各Image Viewをプログラムと接続しないといけな
いです。ctlを押しながら GameViewController.h
にドラッグします。
ConnectionをOutlet、TypeをUIImageCiew、
StorageをWeakのまま変えず
Nameに好きな名前をつけます。
上の場合はぐーなので “guu”とつけました。
ちょき、ぱーも入れて
GameViewController.hは
こんな感じになりました。
相手の手を表示してみましょう!
if は もしも 〇〇 だったらという
意味です。
うごかしてみましょう!
ボタンを押すと相手がじゃんけんを
  出す様になりました!
そういえば、自分が押した手が
何かiPhoneが分かりませんね??
Tag




  Tagを使うと区別が出来ます。
ぐーは0、ちょきは1、パーは2にします。
プログラムでTagの数字が拾えるんです。
かち!まけ!あいこ!の3つの文字も
 プログラムに繋いでおきます。
自分の手と相手の手の組み合
わせで結果を表示します。
2回目おすとなんだかおかしいですね。。
前の表示が残っているからです。
前の表示を全部非表示にして
  やりなおせばOKです。
ゲームから
メニューに戻る機能を
  つけましょう∼

こっから画像が変わってますけど
    気にしないでね
前回同様、ボタンをドラッグします。
メニューのボタンと同様に
customを選びボタンを
Image画像を変更します
メニュー画面に戻るボタンを
ctl押しながらドラッグします。
下記のように設定します
         Connection : Action
            Type : UIButton
        Event : Touch Up Inside
          Arguments : Sender

       Nameは好きにつけれます。
今回は、 “backToMenuBtnDidPush”とつけました。
GameViewController.hは
こんな感じになりました
こんどは、GameViewController.m の
backToMenuBtnDidPush関数にゲーム画面を閉じる
命令を書きます。
[self dismissViewControllerAnimated:YES
completion:nil];
動かしてみましょう!
これでおしまいです!
最後まで見て頂き
 ありがとうございました!


間違いご指摘などありましたら
 twitterで@itokami1123まで

More Related Content

iPhone開発者初心者向け資料「XcodeのStoryboardで画面を作ろう!」