黄学彪
2020-12-17 9f326f4000847e6167d8166fa2f6a66f53cb3734
ZigbeeApp/Shared/Phone/Device/Logic/CustomText.cs
@@ -11,79 +11,93 @@
        public void Show()
        {
            #region  最上面的布局代码
            var topRowLayout = new RowLayout
            {
                BackgroundColor = ZigbeeColor.Current.LogicTopBackgroundColor,
                Height = Application.GetRealHeight(184),
                LineColor = ZigbeeColor.Current.LogicRowLayoutTopLineColor,
            };
            this.AddChidren(topRowLayout);
            var titleName = new Button
            {
                TextSize = 16,
                TextColor = ZigbeeColor.Current.LogicTextBlackColor,
                TextAlignment = TextAlignment.CenterLeft,
                X = Application.GetRealWidth(176),
                Width = Application.GetRealWidth(400),
                Height = Application.GetRealHeight(69),
                Y = Application.GetRealHeight(92),
                TextID = MyInternationalizationString.custompush,
            };
            topRowLayout.AddChidren(titleName);
            var clickBtn = new Button
            {
                Width = Application.GetRealWidth(81 + 51),
                Height = Application.GetRealHeight(58 + 40),
                Y = Application.GetRealHeight(98 - 40),
            };
            topRowLayout.AddChidren(clickBtn);
            clickBtn.MouseDownEventHandler += (sender, e) =>
            {
                RemoveFromParent();
            };
            var back = new Button
            {
                Width = Application.GetRealWidth(30),
                Height = Application.GetRealHeight(51),
                X = Application.GetRealWidth(81),
                Y = Application.GetRealHeight(98),
                //Gravity = Gravity.CenterVertical;
                UnSelectedImagePath = "ZigeeLogic/back.png",
            };
            topRowLayout.AddChidren(back);
            back.MouseDownEventHandler += (sender, e) =>
            {
                RemoveFromParent();
            };
            #region  上面的布局代码
            TopView view = new TopView();
            this.AddChidren(view.TopRowView());
            view.toptitleNameBtn.TextID = MyInternationalizationString.custompush;
            view.clickBtn.MouseDownEventHandler += (sender, e) => { RemoveFromParent(); };
            #endregion
            var middle = new FrameLayout
            {
                Y = topRowLayout.Bottom,
                Height = Application.GetRealHeight(1920 - 184),
                Y = view.topRowLayout.Bottom,
                Height = Application.GetRealHeight(Method.H - 184),
                BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor,
            };
            this.AddChidren(middle);
            var textBox = new EditText
            var textBox = new EditTextView//EditText
            {
                Width = Application.GetRealWidth(1080),
                Height = Application.GetRealHeight(600),
                TextAlignment = TextAlignment.CenterLeft,
                TextAlignment = TextAlignment.TopLeft,
                TextColor = ZigbeeColor.Current.LogicTextBlackColor,
                BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor,
                Text = Common.Logic.CurrentLogic.LogicCustomPushText,
                TextSize = 14,
            };
            middle.AddChidren(textBox);
            textBox.HideSoftInput();
             var btnsave = new Button
            var textBtn = new Button
            {
                Y= middle.Height-Application.GetRealHeight(260),
                Width = Application.GetRealWidth(80),
                Height = Application.GetRealHeight(50),
                X = Application.GetRealWidth(1080 - 80 - 50),
                Y = Application.GetRealHeight(550 - 25),
                TextColor = ZigbeeColor.Current.LogicBtnCancelColor,
                Text = "50",
            };
            middle.AddChidren(textBtn);
            string s1 = "";
            string s2 = "";
            if (!string.IsNullOrEmpty(Common.Logic.CurrentLogic.LogicCustomPushText))
            {
                textBtn.Text = (50 - Common.Logic.CurrentLogic.LogicCustomPushText.Length).ToString();
            }
            textBox.TextChangeEventHandler += (sender, e) =>
            {
                var leng = e.Length;
                if (leng > 50)
                {
                    var substring = e.Substring(0, 50);
                    s1 = substring;
                    if (s1 == s2)
                    {
                        s2 = s1;
                    }
                    else
                    {
                        if (s2 == "")
                        {
                            s2 = s1;
                        }
                        else
                        {
                            s1 = s2;
                        }
                    }
                    textBox.Text = s2;
                }
                else
                {
                    if (leng == 50)
                    {
                        s2 = e.Substring(0, 50);
                    }
                    else
                    {
                        s1 = "";
                        s2 = "";
                    }
                    textBtn.Text = (50 - leng).ToString();
                }
            };
            var btnsave = new Button
            {
                Y = middle.Height - Application.GetRealHeight(260),
                X = Application.GetRealWidth(85),
                Height = Application.GetRealHeight(130),
                Width = Application.GetRealWidth(910),
@@ -91,23 +105,31 @@
                BackgroundColor = ZigbeeColor.Current.LogicBtnSaveBackgroundColor,
                TextID = MyInternationalizationString.confrim,
                TextColor = ZigbeeColor.Current.LogicBtnSaveTextColor,
                TextSize = 16,
            };
            middle.AddChidren(btnsave);
            middle.AddChidren(btnsave);
            btnsave.MouseUpEventHandler += (sender, e) =>
             {
                 if (Common.Logic.CurrentLogic.LogicId != 0)
                 Common.Logic.CurrentLogic.LogicCustomPushText = textBox.Text.Trim();
                 if (string.IsNullOrEmpty(Common.Logic.CurrentLogic.LogicCustomPushText))
                 {
                     Send.LogicControlSwitch(Common.Logic.CurrentLogic);
                     var alert = new ShowMsgControl(ShowMsgType.Normal,
                           Language.StringByID(MyInternationalizationString.tiptextnull),
                           Language.StringByID(MyInternationalizationString.confrim));
                           alert.Show();
                           return;
                 }
                 else {
                     Send.AddModifyLogic(Common.Logic.CurrentLogic);
                 }
                 Send.Zj(true, Common.Logic.CurrentLogic);
                 RemoveFromParent();
             };
        }
    }
}