ゴルフのスコアカウンター(iPhone版)

ゴルフのスコアカウンターのiPhone版。

ソース

●画面のレイアウト

layout

レイアウト

Window baseアプリケーションとして作成。図のように配置した。PARの値を選択するのにドロップダウンリストを使いたかったが、ドロップダウンリストがなかった。仕方なくSegmented controlを使用した。

●クラス構成

xibファイルのFileOwnerはAppDelegateなので、イベントハンドラはここに書くこともできたが、今回はあえてGUIイベントハンドラとして、Controllerという名前のNSObjectの派生クラスを作成した。同時にxibファイルにもObjectを追加し、Custom Class にControllerクラスを設定して連携させ、AppDelegateにOutletとして追加することでインスタンス化する。(一方、Viewを使った場合はView毎にxibファイルを作成するので、UIViewControllerの派生クラスはxibファイルのFileOwnerに指定する。よって、ControllerのObjectを別途xibに追加しなくてよい。アプリ初期化時にinitWithNibNameにxibファイル名を指定して呼び出すことで、xibを読み込んでインスタンス化する。)

●データの初期化

スコアのデータは2次元配列に保持する。Controllerを分けたので、モデルも別にしようかとは思ったが、面倒なのでControllerに持たせた。パーの値は4を初期値として設定する。この初期化処理は、AppDelegateのdidFinishLaunchingWithOptionsから呼び出す。

●イベント処理

前述のControllerクラスに各ボタンが操作された際のActionを定義し、xibで各ボタンのイベントと関連づける。

●課題

ドロップダウンリストの実装方法・・・。リストから選択させるときは何を使うのか?iPhoneを持っていないのでよくわからないが、買うと高いし・・・。サンプルなどをよく調べる必要がある。

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください