Beispiel #1
0
        private static void AddMessageView(DateTime Timestamp, DataType Type, Byte[] Data, bool IsMyMessage)
        {
            Xamarin.Forms.Device.BeginInvokeOnMainThread(delegate
            {
                var MessageLocalTime = Timestamp.ToLocalTime();
                var PaddingLeft      = 5; var PaddingRight = 5;
                Xamarin.Forms.Color Background;
                if (IsMyMessage)
                {
                    PaddingLeft = 20;
                    Background  = Settings.Graphics.BackgroundMyMessage;
                }
                else
                {
                    Background   = Settings.Graphics.BackgroundMessage;
                    PaddingRight = 20;
                }
                var Frame = new Xamarin.Forms.Frame()
                {
                    CornerRadius = 10, BackgroundColor = Background, Padding = 0
                };
                var Box = new Xamarin.Forms.StackLayout()
                {
                    Padding = new Xamarin.Forms.Thickness(PaddingLeft, 5, PaddingRight, 5)
                };
                Frame.Content = Box;
                Container.Children.Insert(0, Frame);
                var TimeLabel       = new Xamarin.Forms.Label();
                TimeSpan Difference = DateTime.Now - MessageLocalTime;
                if (Difference.TotalDays < 1)
                {
                    TimeLabel.Text = MessageLocalTime.ToLongTimeString();
                }
                else
                {
                    TimeLabel.Text = MessageLocalTime.ToLongDateString() + " - " + MessageLocalTime.ToLongTimeString();
                }
                TimeLabel.FontSize = 8;
                Box.Children.Add(TimeLabel);
                switch (Type)
                {
                case DataType.Text:
                    var Label  = new Xamarin.Forms.Label();
                    Label.Text = Encoding.Unicode.GetString(Data);
                    Box.Children.Add(Label);
                    break;

                case DataType.Image:
                    break;

                case DataType.Audio:
                    break;

                default:
                    break;
                }
            });
        }
Beispiel #2
0
        private static void AddMessageView(DataType Type, Byte[] Data, bool IsMyMessage)
        {
            var Container = cryptogram.Views.ItemDetailPage.Messages;
            var PaddingLeft = 5; var PaddingRight = 5;

            Xamarin.Forms.Color Background;
            if (IsMyMessage)
            {
                PaddingLeft = 20;
                Background  = Settings.Graphics.BackgroundMyMessage;
            }
            else
            {
                Background   = Settings.Graphics.BackgroundMessage;
                PaddingRight = 20;
            }
            var Frame = new Xamarin.Forms.Frame()
            {
                CornerRadius = 10, BackgroundColor = Background, Padding = 0
            };
            var Box = new Xamarin.Forms.StackLayout()
            {
                Padding = new Xamarin.Forms.Thickness(PaddingLeft, 5, PaddingRight, 5)
            };

            Frame.Content = Box;
            Container.Children.Insert(0, Frame);
            switch (Type)
            {
            case DataType.Text:
                var Label = new Xamarin.Forms.Label();
                Label.Text = Encoding.Unicode.GetString(Data);
                Box.Children.Add(Label);
                break;

            case DataType.Image:
                break;

            case DataType.Audio:
                break;

            default:
                break;
            }
        }