陈嘉乐
2021-02-25 5eec2e8c16bdcb163b388de486ee375e891df445
HDL_ON/UI/UI2/4-PersonalCenter/PirDevice/AddButton.cs
@@ -4,7 +4,7 @@
using Shared;
namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice
{
    public class AddButton:FrameLayout
    public class AddButton : FrameLayout
    {
        public AddButton()
        {
@@ -97,69 +97,67 @@
            #endregion
            View.Buttons buttons = new View.Buttons();
            var buttonNameList = buttons.GetList("默认按钮");
            buttons.AddButton(buttonFLayout, buttonNameList, (s) => {
            buttons.AddButton(buttonFLayout, buttonNameList, (s) =>
            {
                editText.Text = s;
               #if __Android__
#if __Android__
                editText.SetSelectionEnd();
               #endif
#endif
            });
            ///下一步的点击事件
            saveBtn.MouseUpEventHandler += (sender, e) =>
            {
                View.ReplicationView replication = new View.ReplicationView();
                //new引导界面
                replication.GuideShow();
                var texts = editText.Text.Trim();
                if (string.IsNullOrEmpty( editText.Text)) {
                if (string.IsNullOrEmpty(editText.Text))
                {
                    //名称不能为空
                    return;
                }
                var butName = Pir.BuottonList.Find((c) => c.value == texts);
                if (butName!=null) {
                if (butName != null)
                {
                    //名称已经存在
                    return;
                }
                //new引导界面
                ReplicationView replication = new ReplicationView();
                MainPage.BasePageView.AddChidren(replication);
                replication.Show();
                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                //添加数据对象
                ButtonObj buttonObj = new ButtonObj();
                buttonObj.Key = "key" + Pir.BuottonList.Count.ToString();
                buttonObj.value = texts;
                HDL_ON.DAL.Server.ResponsePackNew responsePackNew = null;
                new System.Threading.Thread(() =>
                {
                    try
                    {
                        //发送红外码学习命令
                        responsePackNew = PirSend.CodeStudy(buttonObj);
                    }
                    catch { }
                    finally
                    {
                        Application.RunOnMainThread(() =>
                        {
                            if (PirSend.Error(responsePackNew))
                            {
                                //添加数据
                                Pir.BuottonList.Add(buttonObj);
                                //移除添加按钮界面
                                this.RemoveFromParent();
                                //加载数据界面
                                AddControl addControl = new AddControl();
                                addControl.Show();
                                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                            }
                            //移除添加按钮引导界面
                         //  replication.dialog.Close();
                        });
                    }
                })
                { IsBackground = true }.Start();
               
                PirSend.CodeStudy(buttonObj, (responsePackNew) =>
                {
                    //休眠是为显示引导界面
                  //  System.Threading.Thread.Sleep(5000);
                    //移除添加按钮引导界面
                    replication.RemoveFromParent();
                    if (!PirSend.Error(responsePackNew))
                    {
                        var buttonName = Pir.BuottonList.Find((c) => c.value == buttonObj.value);
                        if (buttonName == null)
                        {
                            //添加数据
                            Pir.BuottonList.Add(buttonObj);
                        }
                        //移除添加按钮界面
                        this.RemoveFromParent();
                        //移除之前的界面
                        MainPage.BasePageView.RemoveViewByTag("AddControl");
                        //加载数据界面
                        AddControl addControl = new AddControl();
                        MainPage.BasePageView.AddChidren(addControl);
                        addControl.Show();
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                    }
                });
            };
        }