HDL Home App 第二版本 旧平台金堂用 正在使用
黄学彪
2020-01-09 fa6bcb2e9907772480f99205f36ec2a1ce735a22
ZigbeeApp/Shared/Phone/Device/AC/ACControl.cs
@@ -13,7 +13,7 @@
        /// <summary>
        /// The action.
        /// </summary>
        public Action action;
        public Action<DeviceUI, Common.Room> action;
        /// <summary>
        /// 收藏按钮
@@ -362,8 +362,8 @@
        public override void RemoveFromParent()
        {
            ZigBee.Device.ZbGateway.StatusList.Remove(this);
            //action();
            //action = null;
            action(device, room);
            action = null;
            RemoveUpdateControlDeviceStatuAction();
            HomePage.Instance.ScrollEnabled = true;
            if (IsDrawerLockMode)
@@ -413,8 +413,7 @@
                }
            }
            var de = Shared.Common.Room.LoveRoomDeviceUIFilePathList.Find((obj) => obj == device.FileName);
            if (de == null)
            if (Common.Room.CurrentRoom.IsCollectInRoom(device.FileName)==false)
            {
                collectionBtn.IsSelected = false;
            }
@@ -520,18 +519,27 @@
            };
            itemView.AddChidren(indoorTemperatureBtn);
            mArcScaleSeekBar = new ArcScaleSeekBar
            var mArcScaleSeekBarFL = new FrameLayout
            {
                Y = Application.GetRealHeight(412),
                Width = Application.GetRealWidth(671),
                Height = Application.GetRealHeight(671),
                Width = Application.GetMinRealAverage(671),
                Height = Application.GetMinRealAverage(671),
                Gravity = Gravity.CenterHorizontal
            };
            itemView.AddChidren(mArcScaleSeekBarFL);
            mArcScaleSeekBar = new ArcScaleSeekBar
            {
                Width = Application.GetMinRealAverage(671),
                Height = Application.GetMinRealAverage(671),
                Gravity = Gravity.CenterHorizontal,
                MinValue = ACControlBase.Temperature_Low,
                MaxValue = ACControlBase.Temperature_High,
                Progress = ACControlBase.GetCurrentModeTemperature(ac),
                IsClickable = ACControlBase.IsOpen(ac)
                IsClickable = ACControlBase.IsOpen(ac),
                ProgressBarUnitSring = string.Empty
            };
            itemView.AddChidren(mArcScaleSeekBar);
            mArcScaleSeekBarFL.AddChidren(mArcScaleSeekBar);
            if(ACControlBase.IsOpen(ac))
            {
                mArcScaleSeekBar.SetProgressBarColors(ZigbeeColor.Current.GXCArcScaleSeekBarStartColor, ZigbeeColor.Current.GXCArcScaleSeekBarEndColor);
@@ -561,35 +569,47 @@
            currentModeBtn = new Button()
            {
                Y = Application.GetRealHeight(565),
                Height = Application.GetRealHeight(80),
                Y = Application.GetMinRealAverage(187),
                Height = Application.GetRealHeight(50),
                Width = Application.GetRealWidth(200),
                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                Gravity = Gravity.CenterHorizontal,
                Text = ACControlBase.GetModeNameByModeId(ac.currentSystemMode),
                TextSize=12
                TextSize = 12
            };
            itemView.AddChidren(currentModeBtn);
            mArcScaleSeekBarFL.AddChidren(currentModeBtn);
            reduceTemperatureBtn = new Button()
            {
                X = Application.GetRealWidth(268),
                Y = Application.GetRealHeight(650),
                X = Application.GetMinRealAverage(132),
                Y = Application.GetMinRealAverage(268),
                Width = Application.GetMinRealAverage(80),
                Height = Application.GetMinRealAverage(80),
                UnSelectedImagePath = "AC/Reduce.png"
            };
            itemView.AddChidren(reduceTemperatureBtn);
            mArcScaleSeekBarFL.AddChidren(reduceTemperatureBtn);
            addTemperatureBtn = new Button()
            {
                X = Application.GetRealWidth(610),
                Y = Application.GetRealHeight(650),
                X = Application.GetMinRealAverage(452),
                Y = Application.GetMinRealAverage(268),
                Width = Application.GetMinRealAverage(80),
                Height = Application.GetMinRealAverage(80),
                UnSelectedImagePath = "AC/Add.png"
            };
            itemView.AddChidren(addTemperatureBtn);
            mArcScaleSeekBarFL.AddChidren(addTemperatureBtn);
            var uintBtn = new Button
            {
                Y = Application.GetMinRealAverage(369),
                Height = Application.GetRealHeight(60),
                Width = Application.GetRealWidth(100),
                TextColor = ZigbeeColor.Current.GXCTextBlackColor,
                Gravity = Gravity.CenterHorizontal,
                Text = "℃",
                TextSize = 18
            };
            mArcScaleSeekBarFL.AddChidren(uintBtn);
            FanSwingModeBtn = new Button()
            {
@@ -881,6 +901,12 @@
        /// <param name="mouseEventArgs">The ${ParameterType} instance containing the event data.</param>
        private void ShowChangeMode_MouseUpEvent(object sender, MouseEventArgs mouseEventArgs)
        {
            if (HadSupportModel() == false)
            {
                CommonFormResouce.ShowTip(Language.StringByID(R.MyInternationalizationString.AC_Model_None));
                return;
            }
            int modeItem_X = 80;
            int modeItem_Height = 150;
            int modeItem_Width = 449;
@@ -1058,6 +1084,24 @@
            ac.currentSystemMode = (int)acMode;
            mArcScaleSeekBar.Progress = ACControlBase.GetCurrentModeTemperature(ac);
            ac.SetSystemModeAsync(acMode);
        }
        /// <summary>
        /// 是否配置了模式
        /// </summary>
        /// <returns></returns>
        private bool HadSupportModel()
        {
            bool hadMode = false;
            foreach (var m in ac.listSupportMode)
            {
                if (m == 1)
                {
                    hadMode = true;
                    break;
                }
            }
            return hadMode;
        }
        #endregion
@@ -1393,9 +1437,9 @@
            UserView.HomePage.Instance.AddChidren(detailInfo);
            UserView.HomePage.Instance.PageIndex += 1;
            detailInfo.Show(device, room);
            detailInfo.EditAction = (d,r) =>
            detailInfo.EditAction += (curDev, curRoom) =>
            {
                Show(device, room);
                Show(curDev, curRoom);
            };
        }