ACR User Dialogs for Xamarin and Windows
ACR User Dialogs for Xamarin and Windows を使うと、MvvmCross や MVVM パターンの ViewModel のコード(PCL プロジェクト側)から、ダイアログを表示するコードを簡単に書けます。MvvmCross 用のプラグインもあり MvvmCross のサイトからも紹介されいています。
ダイアログ (Alert) だけでなく、ローディング画面なども呼び出せます。機能は次の通り。
- Action Sheet (multiple choice menu)
- Alert
- Confirm
- Loading
- Login
- Progress
- Prompt
- Toasts
NuGet からプロジェクトにインストールします。ViewModel 側(PCL プロジェクト)と、View 側の各プラットフォームのプロジェクトそれぞれにインストールします。
公式のサンプルコードは GitHub の examples にあります。
Dialog
using using Acr.UserDialogs; UserDialogs.Instance.Alert("たこ焼きです", "確認", "OK");
Action Sheet
using using Acr.UserDialogs; var config = new ActionSheetConfig(); config.Title = "メニュー"; config.Add("たこ焼き", () => {/* Do something */ }); config.Add("お好み焼き", () => {/* Do something */ }); UserDialogs.Instance.ActionSheet(config);
Confirm
using using Acr.UserDialogs; var config = new ConfirmConfig(); config.Title = "確認"; config.Message = "たこ焼きを購入します"; config.OnConfirm = (result) => { /* Do something */ }; config.OkText = "購入"; config.CancelText = "キャンセル"; UserDialogs.Instance.Confirm(config);
おわりに
上記以外にももう少し細かなオプションや、非同期呼び出しなども用意されています。使用感として、View 側に一切コードが不要のため手軽で便利ですが、Android ではスタイルを適用できないなど、少しこだわったアプリでは使いづらいところもあります。