wei
2020-12-23 263401d40b2d9d2c1b36a24f33d45c5cb7192518
HDL_ON/UI/UI2/1-HomePage/HomePage.cs
@@ -129,27 +129,15 @@
                    Radius = (uint)Application.GetRealWidth(3),
                };
                topView.AddChidren(btnLinkStateTip);
                if (Control.Ins.GatewayOnline)
                {
                    if (Control.Ins.IsRemote)
                    {
                        bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.LinkTipRemote;
                    }
                    else
                    {
                        bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.MainColor;
                    }
                }
                else
                {
                    bodyView.btnLinkStateTip.BackgroundColor = CSS.CSS_Color.LinkTipFail;
                }
                //更新链接状态icon颜色
                CheckLinkStatus();//2020-12-22
                //LoadEvent_CheckLinkStatus();
                btnResidenceName = new Button()
                {
                    X = Application.GetRealWidth(26),
                    Y = Application.GetRealHeight(32),
                    Width = Application.GetRealWidth(400),
                    Width = Application.GetRealWidth(300),
                    Height = Application.GetRealHeight(33),
                    TextColor = CSS_Color.MainBackgroundColor,
                    TextSize = CSS_FontSize.EmphasisFontSize_FirstLevel,
@@ -166,7 +154,7 @@
                    System.Threading.Tasks.Task.Run(() =>
                        {
                            //DriverLayer.Control.Ins.SearchLoaclGateway();
                            MainPage.InitializationData();
                            //MainPage.InitializationData();
                            //DriverLayer.Control.Ins.IsRemote = true;
                        });
                };
@@ -264,7 +252,7 @@
                };
                msgView.AddChidren(btnMsgBg);
                btnMsgIcon = new Button()
                {
                    X = Application.GetRealWidth(12),
@@ -276,7 +264,7 @@
                };
                msgView.AddChidren(btnMsgIcon);
                btnMsg = new Button()
                {
                    X = Application.GetRealWidth(10) + btnMsgIcon.Right,
@@ -288,7 +276,7 @@
                };
                msgView.AddChidren(btnMsg);
                btnMsgTime = new Button()
                {
                    X = Application.GetRealWidth(299),
@@ -355,38 +343,75 @@
                #region ContextView
                contentView = new PageLayout()
                {
                    Y = changeView.Bottom ,
                    Y = changeView.Bottom,
                    Height = Application.GetRealHeight(310 + 30 + 10), //20为超出部分
                };
                bodyView.AddChidren(contentView);
                functionViews = new List<FrameLayout>();
                deviceFunctionView = new VerticalScrolViewLayout();
                contentView.AddChidren(deviceFunctionView);
                LoadDeviceFunctionControlZone();
                sceneFunctionView = new VerticalScrolViewLayout();
                contentView.AddChidren(sceneFunctionView);
                LoadSceneFunctionControlZone();
                contentView.PageIndex = 0;
                if (!Common.ApiUtlis.Ins.DownloadDataComplete)
                {
                    var waitPage = new Loading();
                    MainPage.BaseView.AddChidren(waitPage);
                    waitPage.Start(Language.StringByID(StringId.PleaseWait));
                    new System.Threading.Thread(() =>
                    {
                        while (!Common.ApiUtlis.Ins.DownloadDataComplete)
                        {
                            System.Threading.Thread.Sleep(400);
                        }
                        Application.RunOnMainThread(() =>
                        {
                            deviceFunctionView = new VerticalScrolViewLayout();
                            contentView.AddChidren(deviceFunctionView);
                            LoadDeviceFunctionControlZone();
                            sceneFunctionView = new VerticalScrolViewLayout();
                            contentView.AddChidren(sceneFunctionView);
                            LoadSceneFunctionControlZone();
                            contentView.PageIndex = 0;
                            LoadEvent_ChangeShowedFunctionType();
                            // 查询未读消息并显示
                            GetUnreadPushMessages();
                            RegisterGetPushMessageAction();
                            waitPage.Hide();
                        });
                    })
                    { IsBackground = true }.Start();
                }
                else
                {
                    deviceFunctionView = new VerticalScrolViewLayout();
                    contentView.AddChidren(deviceFunctionView);
                    LoadDeviceFunctionControlZone();
                    sceneFunctionView = new VerticalScrolViewLayout();
                    contentView.AddChidren(sceneFunctionView);
                    LoadSceneFunctionControlZone();
                    contentView.PageIndex = 0;
                    LoadEvent_ChangeShowedFunctionType();
                    // 查询未读消息并显示
                    GetUnreadPushMessages();
                    RegisterGetPushMessageAction();
                }
                #endregion
                LoadEvent_ChangeShowedFunctionType();
                // 查询未读消息并显示
                GetUnreadPushMessages();
            }
            catch (Exception ex)
            {
                MainPage.Log($"HomePage LoadPage Error : {ex.Message}");
            }
            System.Threading.Tasks.Task.Run(() =>
            {
                //DriverLayer.Control.Ins.SearchLoaclGateway();
            });
        }
        /// <summary>
@@ -394,6 +419,7 @@
        /// </summary>
        void LoadDeviceFunctionControlZone()
        {
            #region ContextView
            deviceFunctionView.RemoveAll();
            functionViews.Clear();
@@ -662,7 +688,13 @@
                    SelectedImagePath = "Collection/CollectionWhiteIcon.png",
                    UnSelectedImagePath = "Collection/CollectionIcon.png",
                };
                view.AddChidren(btnCollection);
                //view.AddChidren(btnCollection);
                //2020-12-16 如果是成员隐藏收藏功能
                if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare)
                {
                    view.AddChidren(btnCollection);
                }
                LoadEvent_FunctionCollection(btnCollection, function);
                if (function.functionCategory == FunctionCategory.Curtain)
@@ -815,7 +847,23 @@
                    }
                    LoadEvent_SwitchFunction(function, btnSwitch);
                }
                var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, new Button(), new Button(), new Button());
                //取消收藏事件
                Action cannelCollect = () => {
                    function.collect = false;
                    if (function.functionCategory == FunctionCategory.Music)//处理音乐主从关系
                    {
                        if ((function as Music.A31MusicModel).ServerClientType == 1)
                        {
                            (function as Music.A31MusicModel).MainPlayCollection = false;
                            Music.A31MusicModel.Save();
                        }
                    }
                    string msg = function.name + Language.StringByID(StringId.CollectionCancelled);
                    LoadDeviceFunctionControlZone();
                    function.SaveFunctionData(true);
                };
                var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, btnCollection, btnName, btnZone);
                view.MouseUpEventHandler = skipControlPageEvent;
                btnName.MouseUpEventHandler = skipControlPageEvent;
                btnIcon.MouseUpEventHandler = skipControlPageEvent;
@@ -844,6 +892,19 @@
                    UnSelectedImagePath = "Collection/SceneCovered.png",
                };
                view.AddChidren(btnCoverd);
                Button btnShowDelay;
                btnShowDelay = new Button()
                {
                    X = Application.GetRealWidth(40),
                    Y = Application.GetRealWidth(4),
                    Height = Application.GetRealWidth(32),
                    Width = Application.GetRealWidth(100),
                    TextColor = CSS_Color.AuxiliaryColor1,
                    TextAlignment = TextAlignment.CenterLeft,
                    TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                };
                view.AddChidren(btnShowDelay);
                Button btnSettingIcon;
                btnSettingIcon = new Button()
@@ -896,10 +957,16 @@
                    SelectedImagePath = "Collection/CollectionWhiteIcon.png",
                    UnSelectedImagePath = "Collection/CollectionIcon.png",
                };
                view.AddChidren(btnCollection);
                //view.AddChidren(btnCollection);
                //2020-12-16 如果是成员隐藏收藏功能
                if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare)
                {
                    view.AddChidren(btnCollection);
                }
                LoadEvent_SceneCollection(btnCollection, scene);
                LoadEvent_ControlScene(btnCoverd,btnName,btnZone, scene);
                LoadEvent_ControlScene(btnCoverd, btnName, btnZone, btnShowDelay, scene);
                btnSettingIcon.MouseUpEventHandler = (sender, e) => {
                    Action backAction = () => {
@@ -917,6 +984,8 @@
                    aep.LoadPage( refreshAction);
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                };
                //场景正在倒计时执行中
                scene.SceneCountDown(btnShowDelay);
            }
            catch (Exception ex)
            {