Yuta Watanabe's Blog

開発周りと、その他諸々

XamarinでiOSアプリを作る - Hello, iPhone

C# で iOS アプリが作れる!Xamarin。Xamarin Studio のインストールが完了した後は、さっそく起動してみます。

f:id:yuwata:20131231021119p:plain

中央に表示される Xamarin News には最近公開された Webセミナーの資料や動画、新しいドキュメント等が流れてくるので、最新情報はここからチェックできます。

iOS アプリのHelloWorldは公式ドキュメントに丁寧に解説されているので、まずはここから始めていきます。英語なので、ざっくりと内容をご紹介します。

プロジェクトの作成

iPhone アプリのプロジェクトを作成します。メニューから、ファイル -> 新規 -> ソリューションをクリックすると、テンプレートの選択ウィンドウが開きます。ここでは、C# -> iOS -> iPhone と選んで Single View Application を選択します。

f:id:yuwata:20131231021626p:plain

Xamarin の iOS プロジェクトには主に下記のものが含まれます。

  • Main.cs:アプリケーションのエントリーポイント
  • AppDelegate.cs:OS のイベントを受け取る AppDelegate クラスを実装します
  • ViewController:テンプレートに応じて。View を定義します ( 後ほど細かく見てみます )
  • info.plist:アプリの設定情報です。アプリ名やアイコンの設定はここから。

f:id:yuwata:20131231021825p:plain

プロジェクトに含まれるファイルの役割

AppDelegate クラスで行われていることはシンプルです。UIWindow を作り、そこに UIViewController を追加して View を表示します。このように、iOS からのイベントを受け取る他に、UI の初期化をこのクラスで行います。

Finished Launching メソッドはアプリが初期化された後に呼び出されます。

f:id:yuwata:20131231022136p:plain

ViewController は、.cs、.designer.cs、.xib ファイルの 3つで構成されます。

.xibファイルを開くと Xcodeが起動しインタフェースを作成できます。すると、変更に応じて .designer.cs ファイルが Xamarin によって自動で更新され、.cs ファイルから各コントロールのイベント等を実装していけるという流れです。

UI の作成

Xamarin でも Interface Builder を使い、ドラッグ & ドロップでUIを作っていくことができます。ここは、Objective-C で開発している時と同じです。

f:id:yuwata:20131231022515p:plain

コントロールを配置した後は、Outlet または Action を登録。Control キーを押しながら、ボタンからドラッグ & ドロップして、Outlet を登録してみます。

f:id:yuwata:20131231022652p:plain

保存して Xamarin Studio に戻って .designer.cs ファイルを見ると、コントロールの定義が追加されていることが確認できます。

イベントの実装

Outletとして登録したコントロールのイベントは、もちろん C# で書くことができます。ViewController の ViewDidLoad イベント内で定義していきましょう。

f:id:yuwata:20131231022811p:plain

デバッグ

そして、最後にデバッグ。iOS アプリのデバッグは実機でも行えますが、まだ設定が済んでいない場合はシミュレータを選択して実行します。

f:id:yuwata:20131231022907p:plain

 

サンプル

公式チュートリアル自体はまだまだ続いていきます。チュートリアルより、実際のコードを見ながら学びたいという方は、公開されているサンプルアプリケーションを見てみると、よりコードの構造や書き方がつかめるはずです。サンプルコードも多数公開されているので、こちらも参考になります。まだまだ日本語情報が少ない Xamarin ですが、新しいドキュメントやサンプルも登場してきているので、随時ブログでご紹介していきます。