From 7232642ff48a7fbde2018cde652f3e771fa58025 Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期三, 27 一月 2021 14:32:55 +0800 Subject: [PATCH] 20200127-英文版处理 --- HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 200 ++++++++++++++++++++++++++++++++++--------------- 1 files changed, 138 insertions(+), 62 deletions(-) diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs index 8511bc3..a3bf4c3 100644 --- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs +++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs @@ -11,11 +11,13 @@ namespace HDL_ON.UI { - public partial class HomePage : FrameLayout + public partial class HomePage : VerticalRefreshLayout { #region 鎺т欢鍒楄〃 static HomePage bodyView; + + //FrameLayout bodyView; /// <summary> /// 椤堕儴淇℃伅鍖哄煙 /// </summary> @@ -92,6 +94,15 @@ { bodyView = this; bodyView.BackgroundColor = CSS_Color.BackgroundColor; + + this.VerticalScrollBarEnabled = false; +#if __IOS__ + //鑷姩鍋忕Щ鍙栨秷 + if (UIKit.UIDevice.CurrentDevice.CheckSystemVersion(11, 0)) + { + (this.uiView as UIKit.UIScrollView).ContentInsetAdjustmentBehavior = UIKit.UIScrollViewContentInsetAdjustmentBehavior.Never; + } +#endif } public override void RemoveFromParent() @@ -104,7 +115,17 @@ { try { + this.BeginHeaderRefreshingAction = () => + { + this.EndHeaderRefreshing(); + Common.ApiUtlis.Ins.DownloadData(); + LoadContentView(); + }; + #region topView + + bodyView.RemoveAll(); + topView = new FrameLayout() { Height = Application.GetRealHeight(216), @@ -130,7 +151,8 @@ }; topView.AddChidren(btnLinkStateTip); //鏇存柊閾炬帴鐘舵�乮con棰滆壊 - LoadEvent_CheckLinkStatus(); + CheckLinkStatus();//2020-12-22 + //LoadEvent_CheckLinkStatus(); btnResidenceName = new Button() { @@ -150,12 +172,7 @@ //鎼滅储缃戝叧 btnResidenceName.MouseUpEventHandler = (sender, e) => { - System.Threading.Tasks.Task.Run(() => - { - //DriverLayer.Control.Ins.SearchLoaclGateway(); - //MainPage.InitializationData(); - //DriverLayer.Control.Ins.IsRemote = true; - }); + }; #endif @@ -251,7 +268,7 @@ }; msgView.AddChidren(btnMsgBg); - + btnMsgIcon = new Button() { X = Application.GetRealWidth(12), @@ -263,7 +280,7 @@ }; msgView.AddChidren(btnMsgIcon); - + btnMsg = new Button() { X = Application.GetRealWidth(10) + btnMsgIcon.Right, @@ -275,7 +292,7 @@ }; msgView.AddChidren(btnMsg); - + btnMsgTime = new Button() { X = Application.GetRealWidth(299), @@ -293,9 +310,12 @@ #endregion #region 鍔熻兘鍦烘櫙鍒囨崲 + + bodyView.AddChidren(new Button() { Height = Application.GetRealHeight(20), BackgroundColor = 0x00000000 }); + changeView = new FrameLayout() { - Y = Application.GetRealHeight(20) + topView.Bottom, + //Y = Application.GetRealHeight(20) + topView.Bottom, Gravity = Gravity.CenterHorizontal, Width = Application.GetRealWidth(230), Height = Application.GetRealHeight(62), @@ -305,14 +325,15 @@ btnChangeFunction = new Button() { - Width = Application.GetRealWidth(114), + X = Application.GetRealWidth(10), + Width = Application.GetRealWidth(114-10), TextID = StringId.Functions, SelectedTextColor = CSS_Color.MainColor, TextColor = CSS_Color.PromptingColor1, TextSize = CSS_FontSize.HeadlineFontSize, TextAlignment = TextAlignment.Center, IsSelected = true, - IsBold = true + IsBold = true, }; changeView.AddChidren(btnChangeFunction); @@ -329,7 +350,7 @@ btnChangeScene = new Button() { X = btnLine.Right, - Width = Application.GetRealWidth(114), + Width = Application.GetRealWidth(114-10), TextID = StringId.Scenes, SelectedTextColor = CSS_Color.MainColor, TextColor = CSS_Color.PromptingColor1, @@ -342,12 +363,77 @@ #region ContextView contentView = new PageLayout() { - Y = changeView.Bottom , + //Y = changeView.Bottom, Height = Application.GetRealHeight(310 + 30 + 10), //20涓鸿秴鍑洪儴鍒� + IsShowPoint = false, }; bodyView.AddChidren(contentView); functionViews = new List<FrameLayout>(); + + LoadContentView(); + + #endregion + } + catch (Exception ex) + { + MainPage.Log($"HomePage LoadPage Error : {ex.Message}"); + } + + } + /// <summary> + /// 鍔犺浇鍐呭鍖哄煙 + /// </summary> + void LoadContentView() + { + if (!Common.ApiUtlis.Ins.DownloadDataComplete) + { + var waitPage = new Loading(); + MainPage.BaseView.AddChidren(waitPage); + waitPage.Start(Language.StringByID(StringId.PleaseWait)); + + new System.Threading.Thread(() => + { + try + { + while (!Common.ApiUtlis.Ins.DownloadDataComplete) + { + System.Threading.Thread.Sleep(400); + } + Application.RunOnMainThread(() => + { + if (contentView == null) + { + return; + } + contentView.RemoveAll(); + deviceFunctionView = new VerticalScrolViewLayout(); + contentView.AddChidren(deviceFunctionView); + LoadDeviceFunctionControlZone(); + sceneFunctionView = new VerticalScrolViewLayout(); + contentView.AddChidren(sceneFunctionView); + LoadSceneFunctionControlZone(); + contentView.PageIndex = 0; + + + LoadEvent_ChangeShowedFunctionType(); + + // 鏌ヨ鏈娑堟伅骞舵樉绀� + GetUnreadPushMessages(); + RegisterGetPushMessageAction(); + + waitPage.Hide(); + }); + } + catch (Exception ex) { + MainPage.Log($"鍒锋柊涓婚〉寮傚父:{ex.Message}"); + } + finally { } + }) + { IsBackground = true }.Start(); + } + else + { deviceFunctionView = new VerticalScrolViewLayout(); contentView.AddChidren(deviceFunctionView); @@ -357,24 +443,15 @@ LoadSceneFunctionControlZone(); contentView.PageIndex = 0; - #endregion LoadEvent_ChangeShowedFunctionType(); // 鏌ヨ鏈娑堟伅骞舵樉绀� GetUnreadPushMessages(); RegisterGetPushMessageAction(); - } - catch (Exception ex) - { - MainPage.Log($"HomePage LoadPage Error : {ex.Message}"); + } - - System.Threading.Tasks.Task.Run(() => - { - //DriverLayer.Control.Ins.SearchLoaclGateway(); - }); } /// <summary> @@ -382,6 +459,7 @@ /// </summary> void LoadDeviceFunctionControlZone() { + #region ContextView deviceFunctionView.RemoveAll(); functionViews.Clear(); @@ -392,7 +470,7 @@ foreach (var function in FunctionList.List.GetDeviceFunctionList()) { //闊充箰妯″潡鏈変富浠庡叧绯伙紝闇�瑕佺壒娈婂鐞� - if (function.functionCategory == FunctionCategory.Music) + if (function.Spk_Prefix == FunctionCategory.Music) { var music = function as Music.A31MusicModel; if (music.ServerClientType == -1) @@ -638,7 +716,11 @@ Tag = "state", Text = function.lastState }; - view.AddChidren(btnState); + + if (function.spk != SPK.LightSwitch) + { + view.AddChidren(btnState); + } Button btnCollection; btnCollection = new Button() @@ -659,7 +741,7 @@ LoadEvent_FunctionCollection(btnCollection, function); - if (function.functionCategory == FunctionCategory.Curtain) + if (function.Spk_Prefix == FunctionCategory.Curtain) { btnIcon.UnSelectedImagePath = "FunctionIcon/Curtain/CurtainIcon.png"; btnIcon.SelectedImagePath = "FunctionIcon/Curtain/CurtainOnIcon.png"; @@ -690,7 +772,7 @@ LoadEvent_ControlCurtain(function as Curtain, btnCurtainClose, btnCurtainOpen); } - else if (function.functionType == FunctionType.TV) + else if (function.spk == SPK.ElectricTV) { btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/TVIcon.png"; Button btnPower; @@ -706,7 +788,7 @@ LoadEvent_ControlTV(function as TV, btnPower); } - else if (function.functionCategory == FunctionCategory.Music) + else if (function.Spk_Prefix == FunctionCategory.Music) { btnIcon.UnSelectedImagePath = "FunctionIcon/Music/MusicIcon.png"; btnIcon.SelectedImagePath = "FunctionIcon/Music/MusicOnIcon.png"; @@ -729,7 +811,8 @@ //Music.SendMethod.ReadStatus(a31player); - btnPower.MouseUpEventHandler = (sender, e) => { + btnPower.MouseUpEventHandler = (sender, e) => + { if (btnPower.IsSelected) { btnPower.IsSelected = false; @@ -762,7 +845,7 @@ }; view.AddChidren(btnSwitch); - switch (function.functionCategory) + switch (function.Spk_Prefix) { case FunctionCategory.Light: #region 鐏厜 Light @@ -771,36 +854,26 @@ UpdataFunctionStates(function as Light); #endregion break; - case FunctionCategory.Thermostat: - switch (function.functionType) - { - case FunctionType.AC: - #region 绌鸿皟 AC - btnIcon.UnSelectedImagePath = "FunctionIcon/AC/AcIcon.png"; - btnIcon.SelectedImagePath = "FunctionIcon/AC/AcOnIcon.png"; - #endregion - break; - case FunctionType.FloorHeating: - #region 鍦扮儹 - btnIcon.UnSelectedImagePath = "FunctionIcon/FloorHeating/FloorHeatingIcon.png"; - btnIcon.SelectedImagePath = "FunctionIcon/FloorHeating/FloorHeatingOnIcon.png"; - #endregion - break; - } + case FunctionCategory.AC: + #region 绌鸿皟 AC + btnIcon.UnSelectedImagePath = "FunctionIcon/AC/AcIcon.png"; + btnIcon.SelectedImagePath = "FunctionIcon/AC/AcOnIcon.png"; + #endregion break; - case FunctionCategory.SwitchDevice: - switch (function.functionType) + case FunctionCategory.FloorHeat: + #region 鍦扮儹 + btnIcon.UnSelectedImagePath = "FunctionIcon/FloorHeating/FloorHeatingIcon.png"; + btnIcon.SelectedImagePath = "FunctionIcon/FloorHeating/FloorHeatingOnIcon.png"; + #endregion + break; + case FunctionCategory.Electric: + switch (function.spk) { - case FunctionType.Socket: + case SPK.ElectricSocket: btnIcon.UnSelectedImagePath = "FunctionIcon/Socket/SocketIcon.png"; btnIcon.SelectedImagePath = "FunctionIcon/Socket/SocketOnIcon.png"; break; - } - break; - case FunctionCategory.Electrical: - switch (function.functionType) - { - case FunctionType.Fan: + case SPK.ElectricFan: btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/FanIcon.png"; btnIcon.SelectedImagePath = "FunctionIcon/Electrical/FanOnIcon.png"; break; @@ -812,7 +885,7 @@ //鍙栨秷鏀惰棌浜嬩欢 Action cannelCollect = () => { function.collect = false; - if (function.functionCategory == FunctionCategory.Music)//澶勭悊闊充箰涓讳粠鍏崇郴 + if (function.Spk_Prefix == FunctionCategory.Music)//澶勭悊闊充箰涓讳粠鍏崇郴 { if ((function as Music.A31MusicModel).ServerClientType == 1) { @@ -822,7 +895,7 @@ } string msg = function.name + Language.StringByID(StringId.CollectionCancelled); LoadDeviceFunctionControlZone(); - function.SaveFunctionData(true); + function.CollectFunction(); }; var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, btnCollection, btnName, btnZone); @@ -831,7 +904,7 @@ btnIcon.MouseUpEventHandler = skipControlPageEvent; btnState.MouseUpEventHandler = skipControlPageEvent; //鐢佃涓嶉渶瑕佹洿鏂扮姸鎬� - if(function.functionType!= FunctionType.TV) + if(function.spk!= SPK.ElectricTV) { UpdataFunctionStates(function); } @@ -877,7 +950,10 @@ Width = Application.GetRealWidth(32), UnSelectedImagePath = "Public/FuncInfoSetIcon_white.png", }; - view.AddChidren(btnSettingIcon); + if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare) + { + view.AddChidren(btnSettingIcon); + } Button btnName; btnName = new Button() -- Gitblit v1.8.0