private void DisplayAlert(DisplayAlertEvent alert) { Device.BeginInvokeOnMainThread(() => { EnsureFrameInitialised(); if (_overlayContainer != null) { lock (_lock) { _alertQueue.Enqueue(alert); if (_alertQueue.Count == 1) { ProcessAlertQueueAsync().ExecuteInBackground(); } } } }); }
private static void CreateBasicAlertView(Message message, out SimplePushAlertView alertView, out DisplayAlertEvent displayAlertEvent, string bodyOverride = null) { alertView = new SimplePushAlertView(); var avatarId = message.AvatarAssetId; if (!String.IsNullOrEmpty(avatarId)) { var assetHelper = DonkyCore.Instance.GetService<IAssetHelper>(); alertView.Image.Source = new UriImageSource { Uri = new Uri(assetHelper.CreateUriForAsset(avatarId)) }; } alertView.TitleLabel.Text = message.SenderDisplayName; alertView.BodyLabel.Text = bodyOverride ?? message.Body; displayAlertEvent = new DisplayAlertEvent { Content = alertView }; }
private void HandleDisplayAlert(DisplayAlertEvent alert) { Device.BeginInvokeOnMainThread(() => DisplayAlert(alert)); }