// 開始ボタンが押された際の処理 private void Start() { // タイマー設定の保存 var settings = TimerSettings.Instance; settings.CountMilliseconds = Time.TotalMilliseconds; settings.UseSpeechText = UseSpeechText; settings.SpeechText = SpeechText; // タイマーを実行してよいかを問い合わせる Alert メッセージの設定 var alertParameter = new AlertParameter() { Title = "確認", Message = "タイマーを開始します。よろしいですか?", Accept = "開始する", Cancel = "開始しない", // アラートメッセージで「開始する/開始しない」選択後の処理 Action = result => { // 「開始する」の場合、タイマーのカウント画面へ移動するようメッセージを送信 if (result) { MessagingCenter.Send(this, "Start"); } } }; // アラートメッセージを表示するようメッセージを送信 MessagingCenter.Send(this, "DisplayAlert", alertParameter); }
// アラートダイアログを表示する private async void DisplayAlert <T>(T sender, AlertParameter arg) { // アラートダイアログを表示する var isAccept = await DisplayAlert(arg.Title, arg.Message, arg.Accept, arg.Cancel); // アラートダイアログでのユーザーの選択結果い応じた処理を実行する arg.Action?.Invoke(isAccept); }