From 9b44e30275621a48335fbea7b32b5065a2859c9c Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 16 三月 2021 16:54:33 +0800
Subject: [PATCH] Merge branch 'WJC' into temp-wxr

---
 HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs |  167 ++++++++++++++++++++++++++++++++++---------------------
 1 files changed, 103 insertions(+), 64 deletions(-)

diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs
index 957a50b..d22a2ca 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs
@@ -4,23 +4,24 @@
 using Shared;
 namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice
 {
-    public class AddButton:FrameLayout
+    public class AddButton : FrameLayout
     {
         public AddButton()
         {
+            Tag = "PirView";
         }
-        public void Show()
+        public void Show(Control control)
         {
             #region 鐣岄潰甯冨眬
             this.BackgroundColor = CSS.CSS_Color.viewMiddle;
             PirDevice.View.TopView topView = new View.TopView();
-            topView.topNameBtn.TextID = StringId.shebeigaunli;
+            topView.topNameBtn.TextID = StringId.tianjiayaokongqi;
             this.AddChidren(topView.FLayoutView());
             topView.clickBackBtn.MouseUpEventHandler += (sender, e) => { this.RemoveFromParent(); };
 
             FrameLayout editfLayout = new FrameLayout
             {
-                Y= topView.frameLayout.Bottom,
+                Y = topView.frameLayout.Bottom,
                 BackgroundColor = CSS.CSS_Color.textWhiteColor,
                 Height = Application.GetRealHeight(152),
                 Width = Application.GetRealWidth(375),
@@ -40,9 +41,9 @@
             EditText editText = new EditText()
             {
                 X = Application.GetRealWidth(16),
-                Width = Application.GetRealWidth(375-16*2),
+                Width = Application.GetRealWidth(375 - 16 * 2),
                 Height = Application.GetRealHeight(44),
-                PlaceholderText=Language.StringByID(StringId.anjianmingcheng),
+                PlaceholderText = Language.StringByID(StringId.anjianmingcheng),
                 PlaceholderTextColor = CSS.CSS_Color.textCancelColor,
                 TextColor = CSS.CSS_Color.textColor,
                 TextSize = TextSize.text14,
@@ -56,21 +57,21 @@
                 Height = Application.GetRealHeight(44),
                 Y = Application.GetRealHeight(92),
                 X = Application.GetRealWidth(78),
-                TextID = StringId.save,
+                TextID = StringId.xiayibu,
                 TextSize = TextSize.text16,
                 TextColor = CSS.CSS_Color.textWhiteColor,
                 TextAlignment = TextAlignment.Center,
                 BackgroundColor = CSS.CSS_Color.btnSaveBackgroundColor,
                 Radius = (uint)Application.GetRealHeight(22),
             };
-            editfLayout.AddChidren(saveBtn); 
+            editfLayout.AddChidren(saveBtn);
 
             FrameLayout fLayout = new FrameLayout
             {
-                Y = editfLayout.Bottom+Application.GetRealHeight(8),
-                BackgroundColor = CSS.CSS_Color.textWhiteColor,
-                Height = Application.GetRealHeight(667-64-152-8),
+                Y = editfLayout.Bottom + Application.GetRealHeight(8),
+                Height = Application.GetRealHeight(667 - 64 - 152 - 8),
                 Width = Application.GetRealWidth(375),
+                BackgroundColor = CSS.CSS_Color.textWhiteColor,
             };
             this.AddChidren(fLayout);
             //鎺ㄨ崘鎸夐敭
@@ -86,67 +87,105 @@
                 TextAlignment = TextAlignment.CenterLeft,
             };
             fLayout.AddChidren(titleBtn);
-           
+            //鍔ㄦ�佸姞杞紹utton鎸夐挳鐖舵帶浠�
             FrameLayout buttonFLayout = new FrameLayout
             {
-                Y = titleBtn.Bottom,
-                Height = Application.GetRealHeight(667 - 64 - 152 - 8-12-20),
+                Y = Application.GetRealHeight(32),
+                Height = Application.GetRealHeight(667 - 64 - 152 - 8 - 12 - 20),
                 Width = Application.GetRealWidth(375),
             };
             fLayout.AddChidren(buttonFLayout);
-
-            VerticalScrolViewLayout vv = new VerticalScrolViewLayout();
-            buttonFLayout.AddChidren(vv);
-
-            List<string> buttonNameList = new List<string> {
-                "鐢垫簮", "闊抽噺+", "闊抽噺-", "棰戦亾+", "棰戦亾-", "涓�", "涓�", "宸�",
-                 "鍙�", "闈欓煶", "纭", "鎾斁", "閫�鍑�", "鑿滃崟", "鏆傚仠", "杩斿洖",
-                  "鍋滄", "涓婚〉", "蹇繘", "蹇��","瀹氭椂",
-            };
-
-            for (int i = 0; i <7; i++)
-            {
-                //vv.AddChidren(new FrameLayout { Height = Application.GetRealWidth(16) });
-                var currFLayout = new FrameLayout { Height = Application.GetRealWidth(16+ 44+2)};
-                vv.AddChidren(currFLayout);
-                for (int a =i*3+1,b=0; a<= buttonNameList.Count; a++,b++)
-                {
-                    var name = buttonNameList[a-1];
-                    var nameBtn = new Button
-                    {
-                        Y = Application.GetRealHeight(16),
-                        X = Application.GetRealWidth(24 + (98 + 16) * b),
-                        Gravity=Gravity.CenterVertical,
-                        Width = Application.GetRealWidth(98),
-                        Height = Application.GetRealHeight(44),
-                        Text = name,
-                        TextSize = TextSize.text16,
-                        TextColor = CSS.CSS_Color.textColor,
-                        TextAlignment = TextAlignment.Center,
-                        Radius = (uint)Application.GetRealHeight(8),
-                        BorderWidth = 1,
-                        BorderColor = CSS.CSS_Color.textCancelColor,
-
-
-                    };
-                    currFLayout.AddChidren(nameBtn);
-                    if (a % 3 == 0)
-                    {
-                        break;
-                    }
-                    nameBtn.MouseUpEventHandler += (sender, e) =>
-                    {
-                        editText.Text = nameBtn.Text;
-                    };
-                }
-
-            }
-        
             #endregion
+            View.Buttons buttons = new View.Buttons();
+            var buttonNameList = buttons.GetList("榛樿鎸夐挳");
+            buttons.AddButton(buttonFLayout, buttonNameList, (s) =>
+            {
+                editText.Text = s;
+#if __Android__
+                editText.SetSelectionEnd();
+#endif
+            });
+            ///涓嬩竴姝ョ殑鐐瑰嚮浜嬩欢
+            saveBtn.MouseUpEventHandler += (sender, e) =>
+            {
+                var texts = editText.Text.Trim();
+                if (string.IsNullOrEmpty(editText.Text))
+                {
+                    //鍚嶇О涓嶈兘涓虹┖
+                    return;
+                }
+                var butName = control.status.Find((c) => c.value == texts);
+                if (butName != null)
+                {
+                    //鍚嶇О宸茬粡瀛樺湪
+                    return;
+                }
+                //new寮曞鐣岄潰
+                View.ReplicationView replication = new View.ReplicationView();
+                replication.Show();
+
+                //娣诲姞鏁版嵁瀵硅薄
+                Entity.AttributesStatus buttonObj = new Entity.AttributesStatus();
+                buttonObj.key = "key" + control.status.Count.ToString();
+                buttonObj.value = texts;
+
+                PirSend.CodeStudy(control, buttonObj, (responsePackNew) =>
+                {
+                    if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "")
+                    {
+                        Method method = new Method();
+                        Method.buttondata = "";
+                        var mqttdate = method.MqttDate("鎸夐敭", control.sid, 25);
+                        if (mqttdate != null)
+                        {
+                            //浼戠湢鏄负鏄剧ず寮曞鐣岄潰
+                            // System.Threading.Thread.Sleep(3000);
+                            //绉婚櫎娣诲姞鎸夐挳寮曞鐣岄潰
+                            replication.RemView();
+                            var buttonName = control.status.Find((c) => c.value == buttonObj.value);
+                            if (buttonName == null)
+                            {
+                                //娣诲姞鏁版嵁
+                                control.status.Add(buttonObj);
+                            }
+                            //绉婚櫎娣诲姞鎸夐挳鐣岄潰
+                            this.RemoveFromParent();
+
+                            for (int i = MainPage.BasePageView.ChildrenCount - 1; 0 <= i; i--)
+                            {
+                                var view = MainPage.BasePageView.GetChildren(i);
+                                if (view.GetType() == typeof(AddControl))
+                                {
+                                    new Intelligence.Automation.LogicView.TipPopView().FlashingBox(Language.StringByID(StringId.tianjiashibai));
+                                    view.RemoveFromParent();
+                                }
+
+                            }
+
+                            //鍔犺浇鏁版嵁鐣岄潰
+                            AddControl addControl = new AddControl();
+                            MainPage.BasePageView.AddChidren(addControl);
+                            addControl.Show(control);
+                            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                        }
+                        else
+                        {
+                            replication.RemView();
+                            new TipPopView().FlashingBox(Language.StringByID(StringId.tianjiashibai));
+
+                        }
+
+                    }
+                    else
+                    {
+                        Method method = new Method();
+                        method.ErrorShow(responsePackNew, "");
+                    }
+
+                });
 
 
-
-
+            };
 
         }
     }

--
Gitblit v1.8.0