前回のつづきです。
インストールが無事に完了したら、早速、Visual Studioを起動してみましょう。
[ファイル]-[新しいプロジェクト]メニューをクリックすれば言語ごとに作成できるテンプレート一覧が表示されます。
Android / Cross-Platform / iOSあたりがXamarinのテンプレートになります。
[Android]
Blank App (Android)
Wear App (Android)
WebView App (Android)
Class Library (Android)
Bindings Library (Android)
UI Test App (Xamarin.UITest | Android)
Unit Test App (Android)
[Cross-Platform]
Blank App (Native Portable)
Blank App (Native Shared)
Blank App (Xamarin.Forms Portable)
Blank App (Xamarin.Forms Shared)
Class Library (Xamarin.Forms)
UI Test App (Xamarin.UITest | Cross-Platform)
[iOS]
[Apple Watch]
Watch App (Apple Watch)
[Extensions]
Action Extentions (iOS)
Document File Provider Extentions (iOS)
Document Picker Extentions (iOS)
Photo Editing Extentions (iOS)
Share Extentions (iOS)
Today Extentions (iOS)
Custom Keyboard Extentions (iOS)
[iPad]
Blank App (iPad)
Master-Detail App (iPad)
ScenceKit Game (iPad)
Signle View App (iPad)
SpriteKit Game (iPad)
[iPhone]
Blank App (iPhone)
Master-Detail App (iPhone)
ScenceKit Game (iPhone)
Signle View App (iPhone)
SpriteKit Game (iPhone)
[Universal]
Blank App (Universal)
Master-Detail App (Universal)
OpenGL Game (Universal)
ScenceKit Game (Universal)
Signle View App (Universal)
SpriteKit Game (Universal)
Xamarinだからといって、AndroidとiOSの両方作らないといけないかといえばそんなことはありません。
同じコードで書けるのだからせっかくなのでという程度のお話。
なのでAndroidやiOSだけのテンプレートでアプリを作るのも楽しいと思います。
とはいえ、やっぱり両方一度に作るのがXamarinの醍醐味ですから、[Crass-Platform]の「Blank App (Native Shared)」か「Blank App (Xamarin.Forms Shared)」あたりのテンプレートを選んでみるのがいいでしょう。
PortableじゃなくてSharedなの?という点については、好みの問題ではあるかもしれませんが、Sharedの方が素性がよい気がしています。
- Portable
→共通コードはPCLと呼ばれるDLLにします。各OSのプロジェクトではDLLを参照する形で行います。 - Shared
→共通コードはSharedプロジェクトに記述します。でもコンパイル自体は各OSのプロジェクトのコードと一緒にコンパイルします。
Blank App (Native Shared)
Blank App (Native Shared)は、画面定義は、iOSはStoryBoard、Androidはaxml、WindowsPhone8.1はXAMLとそれぞれネイティブアプリを作成するときの画面定義と同じ定義で画面が作成できるテンプレートです。すでに画面定義があったり各OSの書籍を参考にするときなどに便利です。
Blank App (Xamarin.Forms Shared)
Blank App (Xamarin.Forms Shared)は、画面定義もXamarin.Formsという画面定義を使って3OSの画面を(別々に定義でもいいし、同じ定義でもいい)定義します。
定義形式は、XAML形式ですがUWPのXAMLとは要素名などが異なります。このあたりは今後どう統合されていくのか楽しみな部分です。
プロジェクトを作成したら
Xamarinは日々進化しています。特にXamarin.Formsの更新速度が速くテンプレートで使われているものよりも最新版がnugetで提供されています。
テンプレートからプロジェクトを作成したら、各プロジェクト名を右クリックして[NuGetパッケージの管理]で[更新プログラム]タブから更新を行ってください。各プロジェクトごとなので合計3回実施します。