From 72be4f06a683de33ddd563c8447c39f7f17e5b7d Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期一, 06 一月 2020 13:03:50 +0800 Subject: [PATCH] 合并代码 --- ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs | 181 +++++++++++++++++++++++++-------------------- 1 files changed, 101 insertions(+), 80 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs b/ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs index 2c2c8f8..518bdb0 100755 --- a/ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs +++ b/ZigbeeApp/Shared/Phone/Device/Category/CategoryAddScene.cs @@ -4,6 +4,7 @@ using Shared.Common; using Shared.Phone.Device.CommonForm; using Shared.Phone.Device.Room; +using Shared.Phone.UserCenter; using static ZigBee.Device.Scene; namespace Shared.Phone.Device.Category @@ -50,7 +51,7 @@ /// <summary> /// 娣诲姞鐩爣鍚庣殑灞曠ず鍒楄〃 /// </summary> - public VerticalScrolViewLayout TargetListScrolView; + public FrameLayout TargetListScrolView; /// <summary> /// The confirm button. /// </summary> @@ -90,9 +91,15 @@ /// <summary> /// selectedTimeAction /// </summary> - public Action<SceneTargetDeviceUI> selectedAction; - - + private Action<SceneTargetDeviceUI> selectedAction; + /// <summary> + /// 淇敼鍦烘櫙action + /// </summary> + public Action<SceneUI, Common.Room> EditorAction; + /// <summary> + /// 娣诲姞鍦烘櫙action + /// </summary> + public Action AddAction; #endregion @@ -108,7 +115,7 @@ /// </summary> public override void RemoveFromParent() { - Category.instance?.RefreshBodyView(); + UserView.HomePage.Instance.ScrollEnabled = true; base.RemoveFromParent(); } /// <summary> @@ -116,17 +123,34 @@ /// </summary> public void RefreshTargetListView() { + UserView.HomePage.Instance.ScrollEnabled = false; TargetListScrolView.RemoveAll(); + TargetListScrolView.Height = Application.GetRealHeight(173); + var TargetListScrolBackView = new FrameLayout() + { + Height = Application.GetRealHeight(173), + BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor + }; + TargetListScrolView.AddChidren(TargetListScrolBackView); if (sceneTargetDevicesList.Count > 0) { - foreach (var targetDevice in sceneTargetDevicesList) + if (sceneTargetDevicesList.Count > 1) { + TargetListScrolView.Height = Application.GetRealHeight(140 * sceneTargetDevicesList.Count) + Application.GetRealHeight(200); + TargetListScrolBackView.Height = Application.GetRealHeight(140 * sceneTargetDevicesList.Count + 13); + } + + for (int i = 0; i < sceneTargetDevicesList.Count; i++) + { + var targetDevice = sceneTargetDevicesList[i]; var targetRowLayout = new RowLayout() { - Height = Application.GetRealHeight(160), - LineColor = ZigbeeColor.Current.GXCBackgroundColor, - BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor + Y = Application.GetRealHeight(i * 140), + Height = Application.GetRealHeight(140), + LineColor = ZigbeeColor.Current.GXCClearColor, + BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor, + SubViewWidth = Application.GetRealWidth(184) }; TargetListScrolView.AddChidren(targetRowLayout); string devImgPath = string.Empty; @@ -137,51 +161,53 @@ devImgPath = targetDevice.DeviceUI.IconPath; devNameText = targetDevice.DeviceUI.CommonDevice.DeviceEpointName; - var targetRow = new SceneTargetFunctionRow(23); - targetRowLayout.AddChidren(targetRow); + var targetRow = new SceneTargetFunctionRow(13); targetRow.Init(); targetRow.SetIcon(devImgPath); targetRow.SetNameText(devNameText); targetRow.SetZoneText(targetDevice.DeviceUI.GetZone()); targetRow.SetStatuText(targetDevice.GetDeviceStatu()); + targetRowLayout.AddChidren(targetRow); + if (i == sceneTargetDevicesList.Count - 1) + { + targetRow.HideLine(true); + } } else if (targetDevice.Type == 2) { devNameText = CommonFormResouce.GetTimeString(targetDevice.DelayTime); devNameText += Language.StringByID(R.MyInternationalizationString.Later); - var targetRow = new SceneTargetTimeRow(23); - targetRowLayout.AddChidren(targetRow); + var targetRow = new SceneTargetTimeRow(13); targetRow.Init(); targetRow.SetTitle(devNameText); + targetRowLayout.AddChidren(targetRow); + if (i == sceneTargetDevicesList.Count - 1) + { + targetRow.HideLine(true); + } } else if (targetDevice.Type == 1) { devImgPath = "Scene/SceneIcon.png"; devNameText = targetDevice.SceneName; - var targetRow = new SceneTargetFunctionRow(23); - targetRowLayout.AddChidren(targetRow); + var targetRow = new SceneTargetFunctionRow(13); targetRow.Init(); targetRow.SetIcon(devImgPath); targetRow.SetNameText(devNameText); targetRow.SetZoneText(targetDevice.SceneUI.GetZone()); + targetRowLayout.AddChidren(targetRow); + if (i == sceneTargetDevicesList.Count - 1) + { + targetRow.HideLine(true); + } } - var editBtn = new Button() - { - BackgroundColor = ZigbeeColor.Current.GXCEditBackGroundColor, - TextID = R.MyInternationalizationString.Edit, - TextColor = ZigbeeColor.Current.GXCTextWhiteColor - }; + var editBtn = new RowLayoutEditButton(); targetRowLayout.AddRightView(editBtn); //缂栬緫璁惧 editBtn.MouseUpEventHandler += detailMouseUpEventHandler; - var delBtn = new Button() - { - BackgroundColor = ZigbeeColor.Current.GXCRedColor, - TextID = R.MyInternationalizationString.Delete, - TextColor = ZigbeeColor.Current.GXCTextWhiteColor - }; + var delBtn = new RowLayoutDeleteButton(); targetRowLayout.AddRightView(delBtn); //鍒犻櫎璁惧 delBtn.MouseUpEventHandler += (sender, e) => @@ -254,17 +280,6 @@ } } } - - if (sceneTargetDevicesList.Count > 1) - { - var targetRowLayout = new RowLayout() - { - Height = Application.GetRealHeight(300), - LineColor = ZigbeeColor.Current.GXCBackgroundColor, - BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor - }; - TargetListScrolView.AddChidren(targetRowLayout); - } } } /// <summary> @@ -317,13 +332,20 @@ /// </summary> private void AddBodyView() { - bodyFrameLayout = new FrameLayout() + var bodyScrolView=new VerticalScrolViewLayout() { Y = Application.GetRealHeight(184), Height = Application.GetRealHeight(1737), BackgroundColor = ZigbeeColor.Current.GXCGrayBackgroundColor, }; - AddChidren(bodyFrameLayout); + AddChidren(bodyScrolView); + + bodyFrameLayout = new FrameLayout() + { + Height = Application.GetRealHeight(1086+127), + BackgroundColor = ZigbeeColor.Current.GXCGrayBackgroundColor, + }; + bodyScrolView.AddChidren(bodyFrameLayout); var imgFL = new FrameLayout { @@ -345,8 +367,8 @@ var infoFL = new FrameLayout { - Y = imgFL.Bottom + Application.GetRealHeight(23), - Height = Application.GetRealHeight(418), + Y = Application.GetRealHeight(588), + Height = Application.GetRealHeight(429), BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor }; bodyFrameLayout.AddChidren(infoFL); @@ -360,7 +382,7 @@ TextColor = ZigbeeColor.Current.GXCTextDeepBlackColor, TextAlignment = TextAlignment.CenterLeft, TextSize = 15, - IsBold=true + //IsBold=true }; infoFL.AddChidren(infoEdit); @@ -380,8 +402,8 @@ var targetFL = new FrameLayout() { - Y = infoFL.Bottom + Application.GetRealHeight(23), - Height = Application.GetRealHeight(730) + Y = Application.GetRealHeight(1040), + Height = Application.GetRealHeight(346) }; bodyFrameLayout.AddChidren(targetFL); @@ -430,12 +452,13 @@ }; addTargetFL.AddChidren(targetLine); - TargetListScrolView = new VerticalScrolViewLayout() + TargetListScrolView = new FrameLayout() { - Y = Application.GetRealHeight(49+127), - Height = Application.GetRealHeight(730-127-49), + Height = Application.GetRealHeight(173) }; - targetFL.AddChidren(TargetListScrolView); + bodyScrolView.AddChidren(TargetListScrolView); + + confirmBtn = new CommonForm.CompleteButton(1656, 907, 127); confirmBtn.TextID = R.MyInternationalizationString.Next; @@ -577,7 +600,7 @@ { selectFL.RemoveFromParent(); var tradeTime = DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo); - var fileName = $"SceneIcon_{tradeTime}"; + var fileName = $"SceneIcon_{tradeTime}.png"; //閫氳繃鐩告満鎷嶇収瑁佸壀 CropImage.TakePicture((imagePath) => { @@ -586,6 +609,7 @@ if (IconPathType != 0) { Global.DeleteFilebyHomeId(backGround.ImagePath); + HdlAutoBackupLogic.DeleteFile(backGround.ImagePath); } } @@ -601,7 +625,7 @@ { selectFL.RemoveFromParent(); var tradeTime = DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo); - var fileName = $"SceneIcon_{tradeTime}"; + var fileName = $"SceneIcon_{tradeTime}.png"; //浠庣浉鍐岄�夋嫨鍥剧墖瑁佸壀 CropImage.SelectPicture((imagePath) => { @@ -610,6 +634,7 @@ if (IconPathType != 0) { Global.DeleteFilebyHomeId(backGround.ImagePath); + HdlAutoBackupLogic.DeleteFile(backGround.ImagePath); } } @@ -851,7 +876,7 @@ } if (curRoom.IsSharedRoom) { - RemoveFromParent(); + RoomCommon.ShowTipRoomIsShared(); return; } @@ -859,19 +884,15 @@ { if (string.IsNullOrEmpty(nameRow.NameText.Text)) { - var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.SceneNameCannotBeNull), Language.StringByID(R.MyInternationalizationString.Close)); - alert.Show(); - alert.ResultEventHandler += (sendAlert, eAlert) => - { - return; - }; + CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.SceneNameCannotBeNull)); + return; } else { try { var tradeTime = DateTime.Now.ToString("yyyyMMddHHmmss", DateTimeFormatInfo.InvariantInfo); - var fileName = $"SceneIcon_{tradeTime}"; + var fileName = $"SceneIcon_{tradeTime}.png"; if (modifySceneUI.Name != nameRow.NameText.Text.Trim()) { if (Common.Room.CurrentRoom.GetSameFloorScenes(curRoom.FloorId).Find(s => s.Name == nameRow.NameText.Text.Trim()) != null) @@ -898,10 +919,13 @@ if (OldIconPathType != 0) { Shared.IO.FileUtils.DeleteFile(System.IO.Path.Combine(Config.Instance.FullPath, OldBackgroundImagePath)); + HdlAutoBackupLogic.DeleteFile(System.IO.Path.Combine(Config.Instance.FullPath, OldBackgroundImagePath)); + } if (IconPathType == 1 || IconPathType == 2) { Shared.IO.FileUtils.WriteFileByBytes(System.IO.Path.Combine(Config.Instance.FullPath, fileName), backGround.ImageBytes); + HdlAutoBackupLogic.AddOrEditorFile(System.IO.Path.Combine(Config.Instance.FullPath, fileName)); modifySceneUI.IconPath = fileName; } else @@ -930,7 +954,7 @@ Epoint = sceneTarget.DeviceUI.CommonDevice.DeviceEpoint, TaskList = sceneTarget.TaskList, DelayTime = 0, - MemberNumber = i+1 + MemberNumber = i + 1 }; memberDataList.Add(memberData); } @@ -942,7 +966,7 @@ ScenesId = 0, ElseScenesId = sceneTarget.ElseScenesId, DelayTime = 0, - MemberNumber = i+1 + MemberNumber = i + 1 }; memberDataList.Add(memberData); } @@ -953,7 +977,7 @@ Type = 2, ScenesId = 0, DelayTime = sceneTarget.DelayTime, - MemberNumber = i+1 + MemberNumber = i + 1 }; memberDataList.Add(memberData); } @@ -994,8 +1018,8 @@ var removeDevice = new ZigBee.Device.Scene.RemoveSceneDeviceListInfo { Type = 2, - DelayTime=sceneTarget.DelayTime, - MemberNumber=sceneTarget.DelayTimeSerialNumber + DelayTime = sceneTarget.DelayTime, + MemberNumber = sceneTarget.DelayTimeSerialNumber }; removeSceneDeviceListInfoList.Add(removeDevice); } @@ -1014,15 +1038,16 @@ modifyRoom.Save(); curRoom.Save(); } + EditorAction?.Invoke(modifySceneUI, curRoom); RemoveFromParent(); } else if (result == 0) { - Common.CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.FailedPleaseTryAgain); + CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.FailedPleaseTryAgain)); } else if (result == -1) { - Common.CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneHadExist); + CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.TheSceneHadExist)); } } catch (Exception ex) @@ -1040,12 +1065,8 @@ //鏂板 if (string.IsNullOrEmpty(nameRow.NameText.Text)) { - var alert = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.SceneNameCannotBeNull), Language.StringByID(R.MyInternationalizationString.Close)); - alert.Show(); - alert.ResultEventHandler += (sendAlert, eAlert) => - { - return; - }; + CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.SceneNameCannotBeNull)); + return; } else { @@ -1063,11 +1084,11 @@ { imgPath = backGround.ImagePath; } - if (Common.Room.CurrentRoom.GetSameFloorScenes(curRoom.FloorId).Find(s => s.Name == nameRow.NameText.Text.Trim()) != null) - { - Common.CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneHadExist); - return; - } + //if (Common.Room.CurrentRoom.GetSameFloorScenes(curRoom.FloorId).Find(s => s.Name == nameRow.NameText.Text.Trim()) != null) + //{ + // CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.TheSceneHadExist)); + // return; + //} CommonPage.Loading.Start(); var memberDataList = new List<ZigBee.Device.Scene.AddSceneMemberData>(); for (int i = 0; i < sceneTargetDevicesList.Count; i++) @@ -1120,15 +1141,16 @@ var result = await curRoom.AddScene(nameRow.NameText.Text, imgPath, memberDataList); if (result == 1) { + AddAction?.Invoke(); RemoveFromParent(); } else if (result == 0) { - CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.AddSceneFail); + CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.AddSceneFail)); } else if (result == -1) { - CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.TheSceneHadExist); + CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.TheSceneHadExist)); } } catch (Exception ex) @@ -1139,7 +1161,6 @@ { CommonPage.Loading.Hide(); } - } } -- Gitblit v1.8.0