wxr
2022-10-09 ed2d2c9b9e9bca8cd97136b738c2624193dd9d92
HDL_ON/UI/MainPage.cs
@@ -262,6 +262,7 @@
            BaseView.AddChidren(BtnBackIcon);
            backView.MouseMoveEventHandler = (sender, e) =>
            {
                if (BasePageView.ChildrenCount <= 1)
                {
                    return;
@@ -291,6 +292,26 @@
            };
            backView.MouseUpEventHandler = (sender, e) =>
            {
                if (Inverter.Ins.H5Page.Parent != null)
                {
                    if (Inverter.Ins.PageIndex != "1")
                    {
                        Inverter.Ins.PageIndex = "1";
                        var status = new Dictionary<string, object> { ["method"] = "backPrePage", ["data"] = "" };
                        Inverter.Ins.H5Page.CallJS($"nativeToJs(\'{Newtonsoft.Json.JsonConvert.SerializeObject(status)}\')");
                        MainPage.Log($"up{e.X}");
                        StartX = 0;
                        BtnBackIcon.X = -Application.GetRealWidth(100);
                        return;
                    }
                    else
                    {
                        Inverter.Ins.PageIndex = "1";
                    }
                }
                MainPage.Log($"up{e.X}");
                StartX = 0;
                BtnBackIcon.X = -Application.GetRealWidth(100);
@@ -305,6 +326,28 @@
            };
            backView.MouseUpOutsideEventHandler = (sender, e) =>
            {
                if (Inverter.Ins.H5Page.Parent != null)
                {
                    if (Inverter.Ins.PageIndex != "1")
                    {
                        Inverter.Ins.PageIndex = "1";
                        List<AlinkStatusData> ddd = new List<AlinkStatusData>();
                        //var status = new Dictionary<string, object> { ["method"] = "status", ["data"] = ddd };
                        //var ddd3 = Newtonsoft.Json.JsonConvert.SerializeObject(status);
                        var status = new Dictionary<string, object> { ["method"] = "backPrePage", ["data"] = "" };
                        Inverter.Ins.H5Page.CallJS($"nativeToJs(\'{Newtonsoft.Json.JsonConvert.SerializeObject(status)}\')");
                        MainPage.Log($"up{e.X}");
                        StartX = 0;
                        BtnBackIcon.X = -Application.GetRealWidth(100);
                        return;
                    }
                    else
                    {
                        Inverter.Ins.PageIndex = "1";
                    }
                }
                MainPage.Log($"up{e.X}");
                StartX = 0;
                BtnBackIcon.X = -Application.GetRealWidth(100);
@@ -408,10 +451,28 @@
            int result = 0;
            Application.RunOnMainThread(() =>
            {
                if (Inverter.Ins.H5Page.Parent != null)
                {
                    if (Inverter.Ins.PageIndex != "1")
                    {
                        Inverter.Ins.PageIndex = "1";
                        var status = new Dictionary<string, object> { ["method"] = "backPrePage", ["data"] = "" };
                        Inverter.Ins.H5Page.CallJS($"nativeToJs(\'{Newtonsoft.Json.JsonConvert.SerializeObject(status)}\')");
                        StartX = 0;
                        BtnBackIcon.X = -Application.GetRealWidth(100);
                        return;
                    }
                    else
                    {
                        Inverter.Ins.PageIndex = "1";
                    }
                }
                if (BasePageView == null || BasePageView.ChildrenCount <= 1)
                {
                    result = 2;//无法再后退,可以执行退到桌面
          }
                }
                if (BasePageView.ChildrenCount > 1)
                {
                    int index = BasePageView.ChildrenCount - 1;
@@ -420,14 +481,14 @@
                    {
                        var loading = view as Loading;
                        if (loading.CurStatus == false)//有一些等待界面隐藏了,但是没有移除到,需要先移除
                  {
                        {
                            loading.RemoveFromParent();
                            result = LoadEvent_BackAction();
                        }
                        else
                        {
                            result = 1;//正在等待某些操作
                  }
                        }
                    }
                    else
                    {
@@ -454,7 +515,7 @@
                else
                {
                    result = 2;//无法再后退,可以执行退到桌面
          }
                }
            });
            return result;
        }