From 66a9965c44ecc32a6696abca876ab9d1cd091584 Mon Sep 17 00:00:00 2001 From: gxc <guoxuecheng@guoxuechengdeMacBook-Pro.local> Date: 星期五, 28 二月 2020 15:25:13 +0800 Subject: [PATCH] 2020.2.28 --- ZigbeeApp/Shared/Phone/Device/CommonForm/DeviceDetailInfo.cs | 167 +++++++++++++++++++++++++------------------------------ 1 files changed, 75 insertions(+), 92 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/CommonForm/DeviceDetailInfo.cs b/ZigbeeApp/Shared/Phone/Device/CommonForm/DeviceDetailInfo.cs index f99c5f9..9384b38 100644 --- a/ZigbeeApp/Shared/Phone/Device/CommonForm/DeviceDetailInfo.cs +++ b/ZigbeeApp/Shared/Phone/Device/CommonForm/DeviceDetailInfo.cs @@ -21,7 +21,7 @@ /// <summary> /// action /// </summary> - public Action action; + public Action<DeviceUI,Common.Room> EditAction; /// <summary> /// curRoom /// </summary> @@ -39,6 +39,7 @@ /// </summary> private DeviceInfoRow functionTypeRow; + #endregion #region 鈼� 绉婚櫎____________________________ @@ -47,7 +48,7 @@ /// </summary> public override void RemoveFromParent() { - action(); + EditAction = null; base.RemoveFromParent(); } #endregion @@ -75,7 +76,7 @@ AddTop(); - AddBodyView(device); + AddBodyView(device,room); } @@ -101,7 +102,7 @@ /// <summary> /// AddBodyView /// </summary> - public void AddBodyView(DeviceUI device) + public void AddBodyView(DeviceUI device, Common.Room room) { bodyFrameLayout = new FrameLayout() { @@ -118,7 +119,7 @@ Height = Application.GetMinRealAverage(207), Gravity = Gravity.CenterHorizontal, BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor, - Radius = (uint)Application.GetMinRealAverage(207) + Radius = (uint)Application.GetMinRealAverage(207/2) }; bodyFrameLayout.AddChidren(deviceBG); @@ -129,7 +130,7 @@ Height = Application.GetMinRealAverage(184), Gravity = Gravity.CenterHorizontal, BackgroundColor = ZigbeeColor.Current.GXCSelectedBackgroundColor, - Radius = (uint)Application.GetMinRealAverage(184) + Radius = (uint)Application.GetMinRealAverage(184/2) }; bodyFrameLayout.AddChidren(deviceBG2); @@ -143,14 +144,17 @@ }; bodyFrameLayout.AddChidren(deviceIMG); + var info = Common.LocalDevice.Current.GetDeviceBelongEnumInfo(device.CommonDevice); + var deviceTypeName = new Button() { Y = Application.GetRealHeight(360), Width = Application.GetRealWidth(900), Height = Application.GetRealHeight(80), TextColor = ZigbeeColor.Current.GXCTextBlackColor, - Text = DeviceUI.GetDeviceTypeName(device.CommonDevice.Type), - Gravity = Gravity.CenterHorizontal + TextID = info.BeloneTextId, + Gravity = Gravity.CenterHorizontal, + TextSize = 15 }; bodyFrameLayout.AddChidren(deviceTypeName); @@ -162,6 +166,8 @@ BackgroundColor = ZigbeeColor.Current.GXCBackgroundColor }; bodyFrameLayout.AddChidren(infoFL); + var rectCornerID = HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight; + infoFL.SetCornerWithSameRadius(Application.GetRealHeight(58), rectCornerID); var tipBtn = new Button { @@ -176,32 +182,65 @@ }; infoFL.AddChidren(tipBtn); - var nameRow = new DeviceInfoEditRow(170); + var infoScrolView = new VerticalScrolViewLayout + { + Y = Application.GetRealHeight(170-12), + Height = Application.GetRealHeight(600), + ScrollEnabled = false, + VerticalScrollBarEnabled = false + }; + infoFL.AddChidren(infoScrolView); + + var nameFL = new FrameLayout + { + Height = Application.GetRealHeight(127 + 12) + }; + infoScrolView.AddChidren(nameFL); + var nameRow = new DeviceInfoEditRow(12); nameRow.Init(); nameRow.SetTipTitle($"{Language.StringByID(R.MyInternationalizationString.FunctionName)} : "); - nameRow.SetTitle(string.IsNullOrEmpty(device.CommonDevice.DeviceEpointName) ? Language.StringByID(R.MyInternationalizationString.UNKnown) : device.CommonDevice.DeviceEpointName); - infoFL.AddChidren(nameRow); + nameRow.SetTitle(string.IsNullOrEmpty(Common.LocalDevice.Current.GetDeviceEpointName(device.CommonDevice)) ? Language.StringByID(R.MyInternationalizationString.UNKnown) : Common.LocalDevice.Current.GetDeviceEpointName(device.CommonDevice)); + nameFL.AddChidren(nameRow); - var zoneRow = new DeviceInfoRow(308); + + var zoneFL = new FrameLayout + { + Height = Application.GetRealHeight(127 + 12) + }; + if (room != null && room.IsLove == false) + { + infoScrolView.AddChidren(zoneFL); + } + var zoneRow = new DeviceInfoRow(12); zoneRow.Init(); zoneRow.SetTipTitle($"{Language.StringByID(R.MyInternationalizationString.BelongZone)} : "); zoneRow.SetTitle(roomName); - infoFL.AddChidren(zoneRow); + zoneFL.AddChidren(zoneRow); - var modelRow = new DeviceInfoRow(446); + var modelFL = new FrameLayout + { + Height = Application.GetRealHeight(127 + 12) + }; + infoScrolView.AddChidren(modelFL); + var modelRow = new DeviceInfoRow(12); modelRow.Init(); modelRow.SetTipTitle($"{Language.StringByID(R.MyInternationalizationString.BelongModel)} : "); modelRow.SetTitle(string.IsNullOrEmpty(device.CommonDevice.DeviceName) ? Language.StringByID(R.MyInternationalizationString.UNKnown) : device.CommonDevice.DeviceName); modelRow.HideNext(true); - infoFL.AddChidren(modelRow); + modelFL.AddChidren(modelRow); - if (device.CommonDevice.Type==ZigBee.Device.DeviceType.OnOffOutput) + if (device.CommonDevice.Type==DeviceType.OnOffOutput || device.CommonDevice.Type==DeviceType.AirSwitch) { - functionTypeRow = new DeviceInfoRow(585); + var typeFL = new FrameLayout + { + Height = Application.GetRealHeight(127 + 12) + }; + infoScrolView.AddChidren(typeFL); + functionTypeRow = new DeviceInfoRow(12); functionTypeRow.Init(); functionTypeRow.SetTipTitle($"{Language.StringByID(R.MyInternationalizationString.FunctionType)} : "); //functionTypeRow.SetTitle(device.CommonDevice.DfunctionType); - infoFL.AddChidren(functionTypeRow); + typeFL.AddChidren(functionTypeRow); var dfunctionType = device.CommonDevice.DfunctionType; //鍔熻兘绫诲瀷鐨勭炕璇戝悕瀛� @@ -250,7 +289,7 @@ //鏍囬:閫夋嫨鍔熻兘绫诲瀷 var title = Language.StringByID(R.MyInternationalizationString.uSelectFunctionType); - var form = new BottomDialogSelectForm(); + var form = new BottomItemSelectForm(); form.AddForm(title, listText, nowSelectNo); form.FinishSelectEvent += (selectNo) => { @@ -271,75 +310,23 @@ } }; }; - - sharedRow = new DeviceInfoRow(723); - sharedRow.Init(); - sharedRow.SetTipTitle($"{Language.StringByID(R.MyInternationalizationString.Share)} : "); - sharedRow.SetTitle("2浜�"); - infoFL.AddChidren(sharedRow); - } - else - { - sharedRow = new DeviceInfoRow(585); - sharedRow.Init(); - sharedRow.SetTipTitle($"{Language.StringByID(R.MyInternationalizationString.Share)} : "); - sharedRow.SetTitle("2浜�"); - infoFL.AddChidren(sharedRow); } - var confirmBtn = new CommonForm.CompleteButton(962, 907, 127); - confirmBtn.SetTitle(R.MyInternationalizationString.Confrim); + + var confirmBtn = new CommonForm.CompleteButton(962, 900, 127); + confirmBtn.SetTitle(R.MyInternationalizationString.Save); infoFL.AddChidren(confirmBtn); #region event EventHandler<MouseEventArgs> selectZoneEvent = (sender, e) => { - List<string> floorIds = new List<string> { }; - List<string> floorNames = new List<string> { }; - List<List<string>> roomNames = new List<List<string>> { }; - List<List<Common.Room>> rooms = new List<List<Common.Room>> { }; - List<Common.Room> rs = new List<Common.Room> { }; - List<string> rNames = new List<string> { }; - if (Config.Instance.Home.FloorDics.Count>0) + var zone = new SelectZone(); + zone.Init(); + zone.ZoneAction += (selectRoom) => { - foreach (var floor in Config.Instance.Home.FloorDics) - { - floorIds.Add(floor.Key); - floorNames.Add(floor.Value); - if (Common.Room.CurrentRoom.GetRoomsByFloorId(floor.Key).Count > 0) - { - roomNames.Add(Common.Room.CurrentRoom.GetRoomNamesByFloorId(floor.Key)); - rooms.Add(Common.Room.CurrentRoom.GetRoomsByFloorId(floor.Key)); - } - } - PickerView.ShowSecondary(floorNames, roomNames, (index1, index2) => - { - curRoom = rooms[index1][index2]; - zoneRow.SetTitle($"{Config.Instance.Home.GetFloorNameById(floorIds[index1])} , {rooms[index1][index2].Name}"); - }, 0, 0, Language.StringByID(R.MyInternationalizationString.BelongFloor), - Language.StringByID(R.MyInternationalizationString.Confrim), - Language.StringByID(R.MyInternationalizationString.Cancel)); - } - else - { - for(int i=0;i<Common.Room.Lists.Count;i++) - { - var r = Common.Room.Lists[i]; - if (r.IsLove) - { - continue; - } - rs.Add(r); - rNames.Add(r.Name); - } - PickerView.Show(rNames, (index1) => - { - curRoom = rs[index1]; - zoneRow.SetTitle(rs[index1].Name); - }, 0,Language.StringByID(R.MyInternationalizationString.BelongFloor), - Language.StringByID(R.MyInternationalizationString.Confrim), - Language.StringByID(R.MyInternationalizationString.Cancel)); - } + curRoom = selectRoom; + zoneRow.SetTitle(selectRoom.GetZoneName()); + }; }; zoneRow.ClickBtn.MouseUpEventHandler += selectZoneEvent; @@ -365,10 +352,10 @@ CommonPage.Loading.Start(); if (device.CommonDevice == null) { - CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.FailedPleaseTryAgain); + CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.FailedPleaseTryAgain)); return; } - if (device.CommonDevice.Type == ZigBee.Device.DeviceType.OnOffOutput) + if (device.CommonDevice.Type == DeviceType.OnOffOutput || device.CommonDevice.Type == DeviceType.AirSwitch) { if (device.IsCustomizeImage == false) { @@ -405,19 +392,15 @@ CommonPage.Loading.Hide(); if (result) { - var alertSuccess = new Alert(Language.StringByID(R.MyInternationalizationString.TIP), Language.StringByID(R.MyInternationalizationString.Success), Language.StringByID(R.MyInternationalizationString.Confrim)); - alertSuccess.Show(); - alertSuccess.ResultEventHandler += (senderSuccess, eSuccess) => - { - //鏀规埧闂� - Shared.Common.Room.CurrentRoom.ChangedRoom(device.CommonDevice, curRoom.Id); - device.CommonDevice.ReSave(); - RemoveFromParent(); - }; + //鏀规埧闂� + Shared.Common.Room.CurrentRoom.ChangedRoom(device.CommonDevice, curRoom.Id); + device.CommonDevice.ReSave(); + EditAction?.Invoke(device, curRoom); + RemoveFromParent(); } else { - CommonPage.Instance.ShowErrorInfoAlert(R.MyInternationalizationString.FailedPleaseTryAgain); + CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.FailedPleaseTryAgain)); } }); }) -- Gitblit v1.8.0