From 263401d40b2d9d2c1b36a24f33d45c5cb7192518 Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期三, 23 十二月 2020 15:51:54 +0800 Subject: [PATCH] 20201223-6 --- HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 157 +++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 124 insertions(+), 33 deletions(-) diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs index 5ccfafc..608fa42 100644 --- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs +++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Text; using HDL_ON.DAL; +using HDL_ON.DriverLayer; using HDL_ON.Entity; using HDL_ON.UI.CSS; using Newtonsoft.Json; @@ -93,6 +94,12 @@ bodyView.BackgroundColor = CSS_Color.BackgroundColor; } + public override void RemoveFromParent() + { + UnregisterGetPushMessageAction(); + base.RemoveFromParent(); + } + public void LoadPage() { try @@ -101,7 +108,7 @@ topView = new FrameLayout() { Height = Application.GetRealHeight(216), - BackgroundImagePath = DB_ResidenceData.residenceData.residenceImage, + BackgroundImagePath = DB_ResidenceData.Instance.residenceImage, }; bodyView.AddChidren(topView); @@ -122,17 +129,20 @@ Radius = (uint)Application.GetRealWidth(3), }; topView.AddChidren(btnLinkStateTip); + //鏇存柊閾炬帴鐘舵�乮con棰滆壊 + 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, TextAlignment = TextAlignment.CenterLeft, - Text = DB_ResidenceData.residenceData.residecenInfo.Name, + Text = DB_ResidenceData.Instance.CurrentRegion.Name, IsBold = true }; topView.AddChidren(btnResidenceName); @@ -144,7 +154,7 @@ System.Threading.Tasks.Task.Run(() => { //DriverLayer.Control.Ins.SearchLoaclGateway(); - MainPage.InitializationData(); + //MainPage.InitializationData(); //DriverLayer.Control.Ins.IsRemote = true; }); }; @@ -242,7 +252,7 @@ }; msgView.AddChidren(btnMsgBg); - + btnMsgIcon = new Button() { X = Application.GetRealWidth(12), @@ -254,7 +264,7 @@ }; msgView.AddChidren(btnMsgIcon); - + btnMsg = new Button() { X = Application.GetRealWidth(10) + btnMsgIcon.Right, @@ -266,7 +276,7 @@ }; msgView.AddChidren(btnMsg); - + btnMsgTime = new Button() { X = Application.GetRealWidth(299), @@ -333,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> @@ -372,6 +419,7 @@ /// </summary> void LoadDeviceFunctionControlZone() { + #region ContextView deviceFunctionView.RemoveAll(); functionViews.Clear(); @@ -379,7 +427,7 @@ try { int index = 0; - foreach (var function in DB_ResidenceData.functionList.GetAllDeviceFunctionList()) + foreach (var function in FunctionList.List.GetDeviceFunctionList()) { //闊充箰妯″潡鏈変富浠庡叧绯伙紝闇�瑕佺壒娈婂鐞� if (function.functionCategory == FunctionCategory.Music) @@ -494,7 +542,7 @@ try { int index = 0; - foreach (var scene in DB_ResidenceData.functionList.scenes) + foreach (var scene in FunctionList.List.scenes) { if (!scene.collect) continue; @@ -640,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) @@ -793,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; @@ -822,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() @@ -874,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 = () => { @@ -892,9 +981,11 @@ }; var aep = new SceneEditPage(scene, backAction); MainPage.BasePageView.AddChidren(aep); - aep.LoadPage(StringId.EditScene, refreshAction); + aep.LoadPage( refreshAction); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; }; + //鍦烘櫙姝e湪鍊掕鏃舵墽琛屼腑 + scene.SceneCountDown(btnShowDelay); } catch (Exception ex) { -- Gitblit v1.8.0