陈嘉乐
2020-07-10 48ba446936b51fffafa7c3600c0dadc6ac0e8c20
ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Controls/MessageControls/ShowMsgControl.cs
@@ -15,6 +15,10 @@
        /// </summary>
        public Action ConfirmClickEvent = null;
        /// <summary>
        /// 点击取消的事件
        /// </summary>
        public Action CancelClickEvent = null;
        /// <summary>
        /// 信息类型
        /// </summary>
        private ShowMsgType msgType = ShowMsgType.Confirm;
@@ -26,6 +30,10 @@
        /// 确认按钮的文本
        /// </summary>
        private string buttonOkText = null;
        /// <summary>
        /// 取消按钮的文本
        /// </summary>
        private string buttonCancelText = null;
        /// <summary>
        /// 提示控件
        /// </summary>
@@ -40,11 +48,13 @@
        /// </summary>
        /// <param name="i_msgType">信息类型</param>
        /// <param name="i_msg">信息</param>
        /// <param name="buttonText">确认按钮的文本</param>
        public ShowMsgControl(ShowMsgType i_msgType, string i_msg, string buttonText = null)
        /// <param name="i_buttonOkText">确认按钮的文本</param>
        /// <param name="i_buttonCancelText">取消按钮的文本</param>
        public ShowMsgControl(ShowMsgType i_msgType, string i_msg, string i_buttonOkText = null, string i_buttonCancelText = null)
        {
            //确认按钮文本
            this.buttonOkText = buttonText == null ? Language.StringByID(R.MyInternationalizationString.OkMsg) : buttonText;
            this.buttonOkText = i_buttonOkText == null ? Language.StringByID(R.MyInternationalizationString.OkMsg) : i_buttonOkText;
            this.buttonCancelText = i_buttonCancelText == null ? Language.StringByID(R.MyInternationalizationString.uCancel) : i_buttonCancelText;
            this.msgType = i_msgType;
            this.msgText = i_msg;
@@ -66,15 +76,18 @@
        /// </summary>
        public void Show()
        {
            if (myTip != null)
            try
            {
                myTip.Show(Common.CommonPage.Instance);
                myTip = null;
                return;
                if (myTip != null)
                {
                    myTip.Show(Common.CommonPage.Instance);
                    myTip = null;
                    return;
                }
                //初始化控件
                this.InitMsgControl();
            }
            //初始化控件
            this.InitMsgControl();
            catch (Exception ex) { HdlLogLogic.Current.WriteLog(ex); }
        }
        #endregion
@@ -86,16 +99,16 @@
        /// </summary>
        private void InitMsgControl()
        {
            //添加界面
            var nowForm = UserView.HomePage.Instance.GetChildren(UserView.HomePage.Instance.ChildrenCount - 1);
            if (nowForm == null || (nowForm is ViewGroup) == false)
            {
                return;
            }
            //主控件
            var frameMain = new FrameLayout();
            frameMain.BackgroundColor = UserCenterColor.Current.DialogBackColor;
            ((ViewGroup)nowForm).AddChidren(frameMain);
            Common.CommonPage.Instance.AddChidren(frameMain);
            frameMain.MouseUpEventHandler += (sender, e) =>
            {
                //移除界面
                frameMain.RemoveFromParent();
                this.ConfirmClickEvent = null;
            };
            //白色背景框
            var frameBack = new FrameLayout();
@@ -162,18 +175,21 @@
            //取消按钮
            var btnCancel = new BottomLeftClickButton(Application.GetRealWidth(396), Application.GetRealHeight(127));
            frameBack.AddChidren(btnCancel);
            btnCancel.InitControl(Language.StringByID(R.MyInternationalizationString.uCancel));
            btnCancel.InitControl(this.buttonCancelText);
            btnCancel.ButtonClickEvent += (sender, e) =>
            {
                //移除界面
                frameMain.RemoveFromParent();
                //回调函数
                this.CancelClickEvent?.Invoke();
                this.ConfirmClickEvent = null;
                this.CancelClickEvent = null;
            };
            //确定按钮
            var btnConfirm = new BottomRightClickButton(frameBack.Width - btnCancel.Width, btnCancel.Height);
            frameBack.AddChidren(btnConfirm);
            btnConfirm.InitControl(buttonOkText);
            btnConfirm.InitControl(this.buttonOkText);
            btnConfirm.ButtonClickEvent += (sender, e) =>
            {
                //移除界面
@@ -181,6 +197,7 @@
                //回调函数
                this.ConfirmClickEvent?.Invoke();
                this.ConfirmClickEvent = null;
                this.CancelClickEvent = null;
            };
        }
@@ -193,7 +210,7 @@
        {
#if Android
            //确认
            var frameConfirm = new FrameLayoutControl();
            var frameConfirm = new FrameLayoutStatuControl();
            frameConfirm.Height = Application.GetRealHeight(127);
            frameConfirm.Width = frameBack.Width;
            frameConfirm.Gravity = Gravity.BottomCenter;
@@ -203,14 +220,14 @@
            //把上圆角覆盖为方角
            var btnTopTemp2 = new NormalViewControl(frameConfirm.Width, Application.GetRealHeight(35), false);
            btnTopTemp2.BackgroundColor = UserCenterColor.Current.ClickButtonDefultColor;
            frameConfirm.AddChidren(btnTopTemp2, ChidrenBindMode.BindEventOnly);
            frameConfirm.AddChidren(btnTopTemp2, ChidrenBindMode.BindEvent);
            //确认按钮
            var btnConfirm = new NormalViewControl(frameConfirm.Width - Application.GetRealWidth(10), Application.GetRealHeight(60), false);
            btnConfirm.Gravity = Gravity.Center;
            btnConfirm.TextColor = UserCenterColor.Current.White;
            btnConfirm.Text = buttonOkText;
            btnConfirm.TextAlignment = TextAlignment.Center;
            frameConfirm.AddChidren(btnConfirm, ChidrenBindMode.BindEventOnly);
            frameConfirm.AddChidren(btnConfirm, ChidrenBindMode.BindEvent);
            frameConfirm.ButtonClickEvent += (sender, e) =>
            {
                //移除界面