| | |
| | | { |
| | | Tag = "Logic"; |
| | | } |
| | | public bool IsDeviceEditor; |
| | | |
| | | Dictionary<string, string> timeifon=new Dictionary<string, string>(); |
| | | Button beforeClickButton = new Button(); |
| | | TimeView timeview = new TimeView |
| | |
| | | BackgroundColor = ZigbeeColor.Current.LogicTopViewBackgroundColor, |
| | | Width = Application.GetRealWidth(1080), |
| | | }; |
| | | /// <summary> |
| | | /// 标记(新加/进来编辑) |
| | | /// </summary> |
| | | public bool IsEditor; |
| | | /// <summary> |
| | | /// 记录进来之前的分钟 |
| | | /// </summary> |
| | | public string StartMin; |
| | | /// <summary> |
| | | /// 记录进来之前的小时 |
| | | /// </summary> |
| | | public string StartHour; |
| | | /// <summary> |
| | | /// 记录进来之前的时间(延时/提前) |
| | | /// </summary> |
| | | public string AdjustTime; |
| | | /// <summary> |
| | | /// 记录时刻的类型(日出/日落/正常) |
| | | /// </summary> |
| | | public string DateType; |
| | | public void Show(Dictionary<string, string> dictionary) |
| | | { |
| | |
| | | timeifon.Add("AdjustTime", dictionary["AdjustTime"]); |
| | | AdjustTime = dictionary["AdjustTime"]; |
| | | |
| | | } |
| | | |
| | | |
| | | this.BackgroundColor = ZigbeeColor.Current.LogicTopViewBackgroundColor; |
| | | this.AddChidren(new Button |
| | | { |
| | | Height = Application.GetRealHeight(80), |
| | | }); |
| | | } |
| | | |
| | | var topFrameLayout = new FrameLayout |
| | | |
| | | #region 最上面的布局代码 |
| | | var topRowLayout = new RowLayout |
| | | { |
| | | Height = Application.GetRealHeight(140), |
| | | Y = Application.GetRealHeight(80), |
| | | BackgroundColor = ZigbeeColor.Current.LogicTopBackgroundColor, |
| | | Height = Application.GetRealHeight(184), |
| | | LineColor = ZigbeeColor.Current.LogicRowLayoutTopLineColor, |
| | | }; |
| | | AddChidren(topFrameLayout); |
| | | this.AddChidren(topRowLayout); |
| | | |
| | | var titleName = new Button |
| | | { |
| | | Text = Language.StringByID(MyInternationalizationString.addtime), |
| | | TextSize = 17, |
| | | TextSize = 16, |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | X = Application.GetRealWidth(150), |
| | | X = Application.GetRealWidth(176), |
| | | Width = Application.GetRealWidth(400), |
| | | Height = Application.GetRealHeight(69), |
| | | Y = Application.GetRealHeight(92), |
| | | TextID = MyInternationalizationString.addtime, |
| | | }; |
| | | topFrameLayout.AddChidren(titleName); |
| | | topRowLayout.AddChidren(titleName); |
| | | |
| | | var clickBtn = new Button |
| | | { |
| | | Width = Application.GetRealWidth(81 + 51), |
| | | Height = Application.GetRealHeight(58 + 40), |
| | | Y = Application.GetRealHeight(98 - 40), |
| | | }; |
| | | topRowLayout.AddChidren(clickBtn); |
| | | clickBtn.MouseDownEventHandler += (sender, e) => |
| | | { |
| | | RemoveFromParent(); |
| | | }; |
| | | |
| | | var back = new Button |
| | | { |
| | | Width = Application.GetRealWidth(110), |
| | | Height = Application.GetRealHeight(110), |
| | | X = Application.GetRealWidth(20), |
| | | Gravity = Gravity.CenterVertical, |
| | | UnSelectedImagePath = "ZigeeLogic/Back.png", |
| | | Width = Application.GetRealWidth(30), |
| | | Height = Application.GetRealHeight(51), |
| | | X = Application.GetRealWidth(81), |
| | | Y = Application.GetRealHeight(98), |
| | | //Gravity = Gravity.CenterVertical; |
| | | UnSelectedImagePath = "ZigeeLogic/back.png", |
| | | }; |
| | | topFrameLayout.AddChidren(back); |
| | | back.MouseDownEventHandler += (sender, e) => |
| | | { |
| | | topRowLayout.AddChidren(back); |
| | | back.MouseDownEventHandler += (sender, e) => { |
| | | RemoveFromParent(); |
| | | IsDeviceEditor = false; |
| | | }; |
| | | #endregion |
| | | |
| | | var middle = new VerticalScrolViewLayout(); |
| | | middle.Y = topFrameLayout.Bottom; |
| | | middle.Height = Application.GetRealHeight(1920 - 220 - 200); |
| | | middle.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; |
| | | |
| | | var middle = new FrameLayout |
| | | { |
| | | Y = topRowLayout.Bottom, |
| | | Height = Application.GetRealHeight(1920 - 184-260), |
| | | BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor, |
| | | }; |
| | | this.AddChidren(middle); |
| | | |
| | | SelectedTimeTypeView(middle,TypeValue); |
| | |
| | | /// </summary> |
| | | /// <param name="middle">Middle.</param> |
| | | /// <param name="TypeValue">Type value.</param> |
| | | void SelectedTimeTypeView(VerticalScrolViewLayout middle, int TypeValue) |
| | | void SelectedTimeTypeView(FrameLayout middle, int TypeValue) |
| | | { |
| | | middle.RemoveAll(); |
| | | #region -----立即执行 |
| | | var row = new RowLayout |
| | | { |
| | | Height = Application.GetRealHeight(250), |
| | | }; |
| | | middle.AddChidren(row); |
| | | |
| | | |
| | | var btnTextTitle = new Button |
| | | var typeFramelayout = new FrameLayout |
| | | { |
| | | Height = Application.GetRealHeight(50), |
| | | Width = Application.GetRealWidth(800), |
| | | Y = Application.GetRealHeight(20), |
| | | X = Application.GetRealWidth(40), |
| | | //Text = "请选择时间类型", |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | TextID=MyInternationalizationString.Selectedtimetype, |
| | | Height = Application.GetRealHeight(160), |
| | | BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor, |
| | | }; |
| | | row.AddChidren(btnTextTitle); |
| | | middle.AddChidren(typeFramelayout); |
| | | |
| | | |
| | | var typeRowlayout = new RowLayout |
| | | { |
| | | Y = Application.GetRealHeight(30), |
| | | Width = Application.GetRealWidth(965), |
| | | Height = Application.GetRealHeight(130), |
| | | X = Application.GetRealWidth(58), |
| | | LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, |
| | | }; |
| | | typeFramelayout.AddChidren(typeRowlayout); |
| | | |
| | | var btnTypeTextTitle = new Button |
| | | { |
| | | Y = Application.GetRealHeight(20 + 50), |
| | | //Text = "类型", |
| | | TextID = MyInternationalizationString.type, |
| | | X = Application.GetRealWidth(40), |
| | | Text = Language.StringByID(MyInternationalizationString.type), |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Height = Application.GetRealHeight(180), |
| | | Width = Application.GetRealWidth(400), |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | Width = Application.GetRealWidth(265) |
| | | }; |
| | | row.AddChidren(btnTypeTextTitle); |
| | | typeRowlayout.AddChidren(btnTypeTextTitle); |
| | | |
| | | var btnTypeText = new Button |
| | | |
| | | ///显示时间类型的控件 |
| | | var btnimmediateexecution = new Button |
| | | { |
| | | Y = Application.GetRealHeight(20 + 50), |
| | | X = Application.GetRealWidth(1080 - 500 - 40), |
| | | //Text = "立即执行", |
| | | TextID = MyInternationalizationString.immediateexecution, |
| | | X = btnTypeTextTitle.Right, |
| | | Gravity = Gravity.CenterVertical, |
| | | Width = Application.GetRealWidth(630), |
| | | TextAlignment = TextAlignment.CenterRight, |
| | | Height = Application.GetRealHeight(180), |
| | | Width = Application.GetRealWidth(500), |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | TextID=MyInternationalizationString.immediateexecution, |
| | | }; |
| | | row.AddChidren(btnTypeText); |
| | | typeRowlayout.AddChidren(btnimmediateexecution); |
| | | |
| | | |
| | | var btnimmediateexecutionBack = new Button |
| | | { |
| | | Width = Application.GetRealWidth(58), |
| | | Height = Application.GetRealHeight(58), |
| | | UnSelectedImagePath = "ZigeeLogic/next.png", |
| | | X = btnimmediateexecution.Right + Application.GetRealWidth(12), |
| | | Gravity = Gravity.CenterVertical, |
| | | }; |
| | | typeRowlayout.AddChidren(btnimmediateexecutionBack); |
| | | |
| | | #endregion |
| | | |
| | | #region -----时刻 |
| | | |
| | | |
| | | var timetypeFramelayout = new FrameLayout |
| | | { |
| | | Height = Application.GetRealHeight(160), |
| | | BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor, |
| | | Y= typeFramelayout.Bottom, |
| | | }; |
| | | middle.AddChidren(timetypeFramelayout); |
| | | |
| | | |
| | | var rowSelectedTimeType = new RowLayout |
| | | { |
| | | Height = Application.GetRealHeight(180), |
| | | Y = Application.GetRealHeight(30), |
| | | Width = Application.GetRealWidth(965), |
| | | Height = Application.GetRealHeight(130), |
| | | X = Application.GetRealWidth(58), |
| | | LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, |
| | | |
| | | }; |
| | | middle.AddChidren(rowSelectedTimeType); |
| | | timetypeFramelayout.AddChidren(rowSelectedTimeType); |
| | | |
| | | var btnTimeText = new Button |
| | | { |
| | | //Text = "时刻", |
| | | TextID = MyInternationalizationString.moment, |
| | | Text = Language.StringByID(MyInternationalizationString.moment), |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Width = Application.GetRealWidth(150), |
| | | X = Application.GetRealWidth(40), |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | Width=Application.GetRealWidth(265) |
| | | }; |
| | | rowSelectedTimeType.AddChidren(btnTimeText); |
| | | |
| | | |
| | | |
| | | ///显示时间类型的控件 |
| | | var btnTimeTpye = new Button |
| | | { |
| | | X = Application.GetRealWidth(300), |
| | | X = btnTimeText.Right, |
| | | Gravity = Gravity.CenterVertical, |
| | | Width = Application.GetRealWidth(600), |
| | | Width = Application.GetRealWidth(630), |
| | | TextAlignment = TextAlignment.CenterRight, |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | }; |
| | | rowSelectedTimeType.AddChidren(btnTimeTpye); |
| | | |
| | | |
| | | var btnTimeTpyeBack = new Button |
| | | { |
| | | Width = Application.GetRealWidth(110), |
| | | Height = Application.GetRealHeight(110), |
| | | Width = Application.GetRealWidth(58), |
| | | Height = Application.GetRealHeight(58), |
| | | UnSelectedImagePath = "ZigeeLogic/next.png", |
| | | SelectedImagePath = "ZigeeLogic/NextSelecte.png", |
| | | X = Application.GetRealWidth(1080 - 140), |
| | | X = btnTimeTpye.Right+ Application.GetRealWidth(12), |
| | | Gravity = Gravity.CenterVertical, |
| | | }; |
| | | rowSelectedTimeType.AddChidren(btnTimeTpyeBack); |
| | | |
| | | |
| | | |
| | | EventHandler<MouseEventArgs> timetpyeclick = (sedner, e) => |
| | | { |
| | | TimeTypeView(middle, TypeValue); |
| | |
| | | btnTimeText.MouseUpEventHandler += timetpyeclick; |
| | | btnTimeTpye.MouseUpEventHandler += timetpyeclick; |
| | | btnTimeTpyeBack.MouseUpEventHandler += timetpyeclick; |
| | | timetypeFramelayout.MouseUpEventHandler += timetpyeclick; |
| | | |
| | | #endregion |
| | | |
| | |
| | | { |
| | | |
| | | #region -----自定义时间 |
| | | rowSelectedTimeType.LineColor = ZigbeeColor.Current.LogicBlankBackgroundColor; |
| | | btnTimeTpyeBack.UnSelectedImagePath = "ZigeeLogic/dropdown.png"; |
| | | var linebtn = new Button |
| | | { |
| | | Y = timetypeFramelayout.Bottom, |
| | | Height = Application.GetRealHeight(5), |
| | | BackgroundColor = ZigbeeColor.Current.LogicRowLayoutLineColor, |
| | | X=Application.GetRealWidth(58), |
| | | Width = Application.GetRealWidth(965), |
| | | }; |
| | | middle.AddChidren(linebtn); |
| | | var rowTimeView = new RowLayout |
| | | { |
| | | Y = linebtn.Bottom, |
| | | Height = Application.GetRealHeight(600), |
| | | }; |
| | | middle.AddChidren(rowTimeView); |
| | |
| | | { |
| | | |
| | | #region -----提前/延时 |
| | | |
| | | var delayFramelayout = new FrameLayout |
| | | { |
| | | Height = Application.GetRealHeight(160), |
| | | BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor, |
| | | Y = timetypeFramelayout.Bottom, |
| | | }; |
| | | middle.AddChidren(delayFramelayout); |
| | | |
| | | |
| | | var rowDelayType = new RowLayout |
| | | { |
| | | Height = Application.GetRealHeight(180), |
| | | Y = Application.GetRealHeight(30), |
| | | Width = Application.GetRealWidth(965), |
| | | Height = Application.GetRealHeight(130), |
| | | X = Application.GetRealWidth(58), |
| | | LineColor = ZigbeeColor.Current.LogicBlankBackgroundColor, |
| | | }; |
| | | middle.AddChidren(rowDelayType); |
| | | delayFramelayout.AddChidren(rowDelayType); |
| | | |
| | | var btnDelayTimeText = new Button |
| | | { |
| | | //Text = "提前/延时", |
| | | TextID = MyInternationalizationString.Advancedelay, |
| | | Text = Language.StringByID(MyInternationalizationString.Advancedelay), |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Width = Application.GetRealWidth(250), |
| | | X = Application.GetRealWidth(40), |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | Width = Application.GetRealWidth(265) |
| | | }; |
| | | rowDelayType.AddChidren(btnDelayTimeText); |
| | | |
| | | |
| | | ///显示时间类型的控件 |
| | | var btnDelayTime = new Button |
| | | { |
| | | X = Application.GetRealWidth(300), |
| | | X = btnTimeText.Right, |
| | | Gravity = Gravity.CenterVertical, |
| | | Width = Application.GetRealWidth(600), |
| | | Width = Application.GetRealWidth(630), |
| | | TextAlignment = TextAlignment.CenterRight, |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | Text = textvalue, |
| | | }; |
| | | rowDelayType.AddChidren(btnDelayTime); |
| | | |
| | | |
| | | var btnDelayTimeBack = new Button |
| | | { |
| | | Width = Application.GetRealWidth(110), |
| | | Height = Application.GetRealHeight(110), |
| | | Width = Application.GetRealWidth(58), |
| | | Height = Application.GetRealHeight(58), |
| | | UnSelectedImagePath = "ZigeeLogic/next.png", |
| | | SelectedImagePath = "ZigeeLogic/NextSelecte.png", |
| | | X = Application.GetRealWidth(1080 - 140), |
| | | X = btnTimeTpye.Right + Application.GetRealWidth(12), |
| | | Gravity = Gravity.CenterVertical, |
| | | }; |
| | | rowDelayType.AddChidren(btnDelayTimeBack); |
| | | |
| | | |
| | | |
| | | EventHandler<MouseEventArgs> timeclick = (sedner, e) => |
| | | { |
| | | DelayView(middle, textvalue, TypeValue); |
| | | |
| | | var mList = new List<string>(); |
| | | mList.Add(Language.StringByID(MyInternationalizationString.advance)); |
| | | mList.Add(Language.StringByID(MyInternationalizationString.nothing)); |
| | | mList.Add(Language.StringByID(MyInternationalizationString.delayed)); |
| | | var listValues = new List<string>(); |
| | | for (int i = 1; i < 61; i++) |
| | | { |
| | | if (i < 10) |
| | | { |
| | | var a = "0" + i.ToString(); |
| | | listValues.Add(a + " " + Language.StringByID(MyInternationalizationString.minute)); |
| | | } |
| | | else |
| | | { |
| | | listValues.Add(i.ToString() + " " + Language.StringByID(MyInternationalizationString.minute)); |
| | | } |
| | | |
| | | } |
| | | var mList2 = new List<List<string>>(); |
| | | mList2.Add(listValues); |
| | | mList2.Add(new List<string> { "0" }); |
| | | mList2.Add(listValues); |
| | | int timevalue = 0; |
| | | int selectIndex = 1; |
| | | if (int.Parse(timeifon["AdjustTime"]) > 0) |
| | | { |
| | | selectIndex = 2; |
| | | timevalue = Math.Abs(int.Parse(timeifon["AdjustTime"])); |
| | | } |
| | | else if (int.Parse(timeifon["AdjustTime"]) < 0) |
| | | { |
| | | selectIndex = 0; |
| | | timevalue = Math.Abs(int.Parse(timeifon["AdjustTime"])); |
| | | } |
| | | else |
| | | { |
| | | selectIndex = 1; |
| | | timevalue = 1; |
| | | } |
| | | PickerView.ShowSecondary(mList, mList2, (selectIndex1, selectIndex2) => |
| | | { |
| | | |
| | | switch (selectIndex1) |
| | | { |
| | | case 0: |
| | | case 2: |
| | | { |
| | | timevalue = int.Parse(listValues[selectIndex2].Split(' ')[0]); |
| | | if (selectIndex1 == 0) |
| | | { |
| | | timevalue = timevalue * -1; |
| | | } |
| | | } |
| | | break; |
| | | case 1: |
| | | timevalue = 0; |
| | | break; |
| | | |
| | | } |
| | | |
| | | if (timeifon.ContainsKey("StartHour")) |
| | | { |
| | | timeifon.Remove("StartHour"); |
| | | } |
| | | if (timeifon.ContainsKey("StartMin")) |
| | | { |
| | | timeifon.Remove("StartMin"); |
| | | } |
| | | if (timeifon.ContainsKey("AdjustTime")) |
| | | { |
| | | timeifon.Remove("AdjustTime"); |
| | | } |
| | | timeifon.Add("AdjustTime", timevalue.ToString()); |
| | | UserView.HomePage.Instance.ScrollEnabled = false; |
| | | SelectedTimeTypeView(middle, TypeValue); |
| | | }, selectIndex, timevalue - 1, Language.StringByID(MyInternationalizationString.Advancedelay)); |
| | | |
| | | }; |
| | | delayFramelayout.MouseUpEventHandler += timeclick; |
| | | rowDelayType.MouseUpEventHandler += timeclick; |
| | | btnDelayTimeText.MouseUpEventHandler += timeclick; |
| | | btnDelayTime.MouseUpEventHandler += timeclick; |
| | |
| | | var fra = new FrameLayout |
| | | { |
| | | Y = middle.Bottom, |
| | | Height = Application.GetRealHeight(200), |
| | | BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor, |
| | | Height = Application.GetRealHeight(260), |
| | | BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor, |
| | | }; |
| | | this.AddChidren(fra); |
| | | this.AddChidren(fra); |
| | | var btnsave = new Button |
| | | { |
| | | X = Application.GetRealWidth(290), |
| | | Height = Application.GetRealHeight(150),//194 |
| | | Width = Application.GetRealWidth(500), |
| | | Radius = (uint)Application.GetRealHeight(50), |
| | | BackgroundColor = ZigbeeColor.Current.LogicButtonBlueColor, |
| | | X = Application.GetRealWidth(85), |
| | | Height = Application.GetRealHeight(130),//194 |
| | | Width = Application.GetRealWidth(910), |
| | | Radius = (uint)Application.GetRealHeight(60), |
| | | BackgroundColor =ZigbeeColor.Current.LogicBtnSaveBackgroundColor, |
| | | TextID = MyInternationalizationString.Save, |
| | | TextColor= ZigbeeColor.Current.LogicBtnSaveTextColor, |
| | | }; |
| | | fra.AddChidren(btnsave); |
| | | btnsave.MouseUpEventHandler += (sender, e) => |
| | |
| | | timeifon.Add("StartMin", timeview.Minute.ToString()); |
| | | } |
| | | |
| | | if (IsDeviceEditor) |
| | | if (IsEditor) |
| | | { |
| | | for (int i = 0; i < Common.Logic.CurrentLogic.Conditions.Count; i++) |
| | | { |
| | |
| | | } |
| | | } |
| | | } |
| | | IsDeviceEditor = false; |
| | | IsEditor = false; |
| | | } |
| | | else |
| | | { |
| | |
| | | /// 处理选中时间类型的方法 |
| | | /// </summary> |
| | | /// <param name="middle">Middle.</param> |
| | | void TimeTypeView(VerticalScrolViewLayout middle,int TypeValue) |
| | | void TimeTypeView(FrameLayout middle, int TypeValue) |
| | | { |
| | | UserView.HomePage.Instance.ScrollEnabled = false; |
| | | var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor }; |
| | | var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicTranslucentColor }; |
| | | this.AddChidren(flMain); |
| | | flMain.MouseUpEventHandler += (sender12, e12) => |
| | | { |
| | |
| | | flMain.RemoveFromParent(); |
| | | }; |
| | | |
| | | var fraview = new FrameLayout { |
| | | Width = Application.GetRealWidth(1080 - 80), |
| | | Height = Application.GetRealHeight(160*6), |
| | | Y = Application.GetRealHeight(1920 - 50 - 960), |
| | | X = Application.GetRealWidth(40), |
| | | var fraview1 = new FrameLayout |
| | | { |
| | | Width = Application.GetRealWidth(1080), |
| | | Height = Application.GetRealHeight(100), |
| | | Y = Application.GetRealHeight(1920 - 100), |
| | | BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor, |
| | | Radius = (uint)Application.GetRealHeight(40), |
| | | }; |
| | | flMain.AddChidren(fraview1); |
| | | |
| | | var fraview = new FrameLayout |
| | | { |
| | | Width = Application.GetRealWidth(1080), |
| | | Height = Application.GetRealHeight(850), |
| | | Y = Application.GetRealHeight(1920 - 850), |
| | | BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor, |
| | | Radius = (uint)Application.GetRealHeight(60), |
| | | }; |
| | | flMain.AddChidren(fraview); |
| | | |
| | | var textBtn = new Button { |
| | | Width = Application.GetRealWidth(1080 - 80), |
| | | Height = Application.GetRealHeight(120), |
| | | TextAlignment=TextAlignment.Center, |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | TextID=MyInternationalizationString.selectcommontimetype, |
| | | }; |
| | | fraview.AddChidren(textBtn); |
| | | |
| | | var timetypeframelayout = new VerticalScrolViewLayout |
| | | #region -------取消 完成 |
| | | var timetype = new RowLayout |
| | | { |
| | | Width = Application.GetRealWidth(1080 - 80), |
| | | Height = Application.GetRealHeight(160*4), |
| | | Y = textBtn.Bottom, |
| | | Height = Application.GetRealHeight(140), |
| | | LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, |
| | | }; |
| | | fraview.AddChidren(timetypeframelayout); |
| | | |
| | | |
| | | var cancelBtn = new Button |
| | | fraview.AddChidren(timetype); |
| | | var Btncancel = new Button |
| | | { |
| | | Width = Application.GetRealWidth(1080 - 80), |
| | | Height = Application.GetRealHeight(160), |
| | | TextAlignment = TextAlignment.Center, |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | TextID = MyInternationalizationString.cancel, |
| | | Y = timetypeframelayout.Bottom+Application.GetRealHeight(40), |
| | | BackgroundColor= ZigbeeColor.Current.LogicTopViewBackgroundColor, |
| | | }; |
| | | fraview.AddChidren(cancelBtn); |
| | | cancelBtn.MouseUpEventHandler += (sender,e) => { |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | flMain.RemoveFromParent(); |
| | | }; |
| | | |
| | | List<string> timetypelist = new List<string> { |
| | | Language.StringByID(MyInternationalizationString.sunrise), |
| | | Language.StringByID(MyInternationalizationString.sunset), |
| | | Language.StringByID(MyInternationalizationString.noon), |
| | | Language.StringByID(MyInternationalizationString.logiccustom), |
| | | }; |
| | | |
| | | foreach (var typename in timetypelist) |
| | | { |
| | | |
| | | var timerowlayout = new RowLayout |
| | | { |
| | | Height = Application.GetRealHeight(160), |
| | | }; |
| | | timetypeframelayout.AddChidren(timerowlayout); |
| | | |
| | | var btntimetext = new Button |
| | | { |
| | | Text = typename, |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | TextAlignment=TextAlignment.CenterLeft, |
| | | X=Application.GetRealWidth(40), |
| | | }; |
| | | timerowlayout.AddChidren(btntimetext); |
| | | |
| | | |
| | | EventHandler<MouseEventArgs> timesclick = (sender, e) => |
| | | { |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | flMain.RemoveFromParent(); |
| | | int a = 0; |
| | | if(btntimetext.Text==Language.StringByID(MyInternationalizationString.logiccustom)){ |
| | | a = 0; |
| | | } |
| | | else if(btntimetext.Text == Language.StringByID(MyInternationalizationString.sunrise)){ |
| | | a = 1; |
| | | } |
| | | else if (btntimetext.Text == Language.StringByID(MyInternationalizationString.sunset)) { |
| | | a = 2; |
| | | } |
| | | else if (btntimetext.Text == Language.StringByID(MyInternationalizationString.noon)) { |
| | | a = 3; |
| | | |
| | | } |
| | | if (a == TypeValue) |
| | | { |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | flMain.RemoveFromParent(); |
| | | return; |
| | | } |
| | | |
| | | if (timeifon.ContainsKey("StartHour")) |
| | | { |
| | | timeifon.Remove("StartHour"); |
| | | } |
| | | if (timeifon.ContainsKey("StartMin")) |
| | | { |
| | | timeifon.Remove("StartMin"); |
| | | } |
| | | if (timeifon.ContainsKey("AdjustTime")) |
| | | { |
| | | timeifon.Remove("AdjustTime"); |
| | | } |
| | | if (timeifon.ContainsKey("DateType")) |
| | | { |
| | | timeifon.Remove("DateType"); |
| | | } |
| | | timeifon.Add("DateType", a.ToString()); |
| | | if (a == 0) |
| | | { |
| | | timeifon.Add("StartHour", "12"); |
| | | timeifon.Add("StartMin", "0"); |
| | | } |
| | | else |
| | | { |
| | | timeifon.Add("AdjustTime", "0"); |
| | | } |
| | | |
| | | SelectedTimeTypeView(middle, a); |
| | | |
| | | }; |
| | | timerowlayout.MouseUpEventHandler += timesclick; |
| | | btntimetext.MouseUpEventHandler += timesclick; |
| | | |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 选中延时时间的处理方法 |
| | | /// </summary> |
| | | /// <param name="middle">Middle.</param> |
| | | void DelayView(VerticalScrolViewLayout middle,string timename,int TypeValue) |
| | | { |
| | | UserView.HomePage.Instance.ScrollEnabled = false; |
| | | var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor }; |
| | | this.AddChidren(flMain); |
| | | flMain.MouseUpEventHandler += (sender12, e12) => |
| | | { |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | flMain.RemoveFromParent(); |
| | | }; |
| | | |
| | | var fraDelay = new FrameLayout |
| | | { |
| | | Width = Application.GetRealWidth(1080 - 80), |
| | | X = Application.GetRealWidth(40), |
| | | BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor, |
| | | Radius = (uint)Application.GetRealHeight(50), |
| | | Height=Application.GetRealHeight(1260-250), |
| | | Y=Application.GetRealHeight(1920-1260+250), |
| | | }; |
| | | flMain.AddChidren(fraDelay); |
| | | |
| | | var titleTextfra = new FrameLayout |
| | | { |
| | | Height = Application.GetRealHeight(180), |
| | | }; |
| | | fraDelay.AddChidren(titleTextfra); |
| | | |
| | | |
| | | var btnTxet = new Button |
| | | { |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | Height = Application.GetRealHeight(180), |
| | | Width = Application.GetRealWidth(400), |
| | | //Text = "请选择时间", |
| | | TextID=MyInternationalizationString.selectedtime, |
| | | X = Application.GetRealWidth(300), |
| | | }; |
| | | titleTextfra.AddChidren(btnTxet); |
| | | |
| | | |
| | | var btnSave = new Button |
| | | { |
| | | TextColor = ZigbeeColor.Current.LogicBtnCancelColor, |
| | | Height = Application.GetRealHeight(140), |
| | | Width = Application.GetRealWidth(200), |
| | | Height = Application.GetRealHeight(180), |
| | | Text = Language.StringByID(MyInternationalizationString.complete), |
| | | TextColor = ZigbeeColor.Current.LogicTextBlueColor, |
| | | X = Application.GetRealWidth(1000 - 200), |
| | | X = Application.GetRealWidth(80), |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | }; |
| | | titleTextfra.AddChidren(btnSave); |
| | | |
| | | |
| | | var timetypeframelayout = new VerticalScrolViewLayout |
| | | timetype.AddChidren(Btncancel); |
| | | Btncancel.MouseUpEventHandler += (sender16, e16) => |
| | | { |
| | | Width = Application.GetRealWidth(1080 - 80), |
| | | Height = Application.GetRealHeight(900-250+20), |
| | | Y =titleTextfra.Bottom, |
| | | BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor, |
| | | flMain.RemoveFromParent(); |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | }; |
| | | fraDelay.AddChidren(timetypeframelayout); |
| | | |
| | | var cancel = new Button |
| | | var Btntitle = new Button |
| | | { |
| | | TextID = MyInternationalizationString.type, |
| | | TextColor = ZigbeeColor.Current.LogicBtnTypeColor, |
| | | Height = Application.GetRealHeight(140), |
| | | Width = Application.GetRealWidth(320), |
| | | TextAlignment = TextAlignment.Center, |
| | | X = Btncancel.Right + Application.GetRealWidth(100), |
| | | TextSize = 16, |
| | | }; |
| | | timetype.AddChidren(Btntitle); |
| | | var Btncomplete = new Button |
| | | { |
| | | TextID = MyInternationalizationString.complete, |
| | | TextColor = ZigbeeColor.Current.LogicBtnCompleteColor, |
| | | Height = Application.GetRealHeight(140), |
| | | Width = Application.GetRealWidth(200), |
| | | TextAlignment = TextAlignment.CenterRight, |
| | | X = Btntitle.Right + Application.GetRealWidth(100), |
| | | |
| | | }; |
| | | timetype.AddChidren(Btncomplete); |
| | | #endregion |
| | | #region -------日出,日落,正午,自定义 |
| | | #region 日出 |
| | | |
| | | |
| | | var sunriseFrameLayout = new FrameLayout |
| | | { |
| | | Height = Application.GetRealHeight(160), |
| | | TextID = MyInternationalizationString.cancel, |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | TextSize = 16, |
| | | BackgroundColor = ZigbeeColor.Current.LogicTopViewBackgroundColor, |
| | | Y =fraDelay.Height- Application.GetRealHeight(160), |
| | | |
| | | Y = timetype.Bottom + Application.GetRealHeight(50), |
| | | }; |
| | | fraDelay.AddChidren(cancel); |
| | | cancel.MouseUpEventHandler += (sender, e) => |
| | | fraview.AddChidren(sunriseFrameLayout); |
| | | |
| | | var sunriseRow = new RowLayout |
| | | { |
| | | flMain.RemoveFromParent(); |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | Y = Application.GetRealHeight(30), |
| | | Width = Application.GetRealWidth(920), |
| | | Height = Application.GetRealHeight(130), |
| | | X = Application.GetRealWidth(80), |
| | | LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, |
| | | }; |
| | | sunriseFrameLayout.AddChidren(sunriseRow); |
| | | |
| | | List<string> timevaluelist = new List<string> { |
| | | Language.StringByID(MyInternationalizationString.advance)+"10"+ Language.StringByID(MyInternationalizationString.logicminute), |
| | | Language.StringByID(MyInternationalizationString.advance)+"5"+ Language.StringByID(MyInternationalizationString.logicminute), |
| | | Language.StringByID(MyInternationalizationString.advance)+"1"+ Language.StringByID(MyInternationalizationString.logicminute), |
| | | Language.StringByID(MyInternationalizationString.nothing), |
| | | Language.StringByID(MyInternationalizationString.delayed)+"1"+ Language.StringByID(MyInternationalizationString.logicminute), |
| | | Language.StringByID(MyInternationalizationString.delayed)+"5"+ Language.StringByID(MyInternationalizationString.logicminute), |
| | | Language.StringByID(MyInternationalizationString.delayed)+"10"+ Language.StringByID(MyInternationalizationString.logicminute), |
| | | }; |
| | | string strvalue = ""; |
| | | foreach (var typename in timevaluelist) |
| | | var btnsunrisetext = new Button |
| | | { |
| | | var timerowlayout = new RowLayout |
| | | { |
| | | Height = Application.GetRealHeight(130), |
| | | LineColor=ZigbeeColor.Current.LogicBackgroundColor, |
| | | }; |
| | | timetypeframelayout.AddChidren(timerowlayout); |
| | | Width = Application.GetRealWidth(600), |
| | | TextID = MyInternationalizationString.sunrise, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor, |
| | | }; |
| | | sunriseRow.AddChidren(btnsunrisetext); |
| | | |
| | | var btntimetext = new Button |
| | | { |
| | | Text = typename, |
| | | Gravity = Gravity.Center, |
| | | TextColor = ZigbeeColor.Current.LogicTextBlackColor, |
| | | SelectedBackgroundColor = ZigbeeColor.Current.LogicTopViewBackgroundColor, |
| | | }; |
| | | timerowlayout.AddChidren(btntimetext); |
| | | if (timename == typename) |
| | | { |
| | | beforeClickButton.IsSelected = false; |
| | | beforeClickButton = btntimetext; |
| | | btntimetext.IsSelected = true; |
| | | strvalue = btntimetext.Text; |
| | | } |
| | | var sunriseSelected = new SelectedButton(); |
| | | sunriseRow.AddChidren(sunriseSelected); |
| | | #endregion |
| | | #region 日落 |
| | | |
| | | EventHandler<MouseEventArgs> timesclick = (sender, e) => |
| | | { |
| | | strvalue = btntimetext.Text; |
| | | beforeClickButton.IsSelected = false; |
| | | beforeClickButton = btntimetext; |
| | | btntimetext.IsSelected = true; |
| | | }; |
| | | timerowlayout.MouseUpEventHandler += timesclick; |
| | | btntimetext.MouseUpEventHandler += timesclick; |
| | | |
| | | } |
| | | |
| | | btnSave.MouseUpEventHandler += (sender2, e2) => |
| | | var sunsetFrameLayout = new FrameLayout |
| | | { |
| | | flMain.RemoveFromParent(); |
| | | Height = Application.GetRealHeight(160), |
| | | Y = sunriseFrameLayout.Bottom, |
| | | }; |
| | | fraview.AddChidren(sunsetFrameLayout); |
| | | |
| | | var sunsetRow = new RowLayout |
| | | { |
| | | Y = Application.GetRealHeight(30), |
| | | Width = Application.GetRealWidth(920), |
| | | Height = Application.GetRealHeight(130), |
| | | X = Application.GetRealWidth(80), |
| | | LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, |
| | | }; |
| | | sunsetFrameLayout.AddChidren(sunsetRow); |
| | | |
| | | var btnsunsettext = new Button |
| | | { |
| | | Width = Application.GetRealWidth(600), |
| | | TextID = MyInternationalizationString.sunset, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor, |
| | | }; |
| | | sunsetRow.AddChidren(btnsunsettext); |
| | | |
| | | var sunsetSelected = new SelectedButton(); |
| | | sunsetRow.AddChidren(sunsetSelected); |
| | | #endregion |
| | | |
| | | #region 正午 |
| | | //正午 |
| | | |
| | | |
| | | |
| | | var noonFrameLayout = new FrameLayout |
| | | { |
| | | Height = Application.GetRealHeight(160), |
| | | Y = sunsetFrameLayout.Bottom, |
| | | }; |
| | | fraview.AddChidren(noonFrameLayout); |
| | | |
| | | var noonRow = new RowLayout |
| | | { |
| | | Y = Application.GetRealHeight(30), |
| | | Width = Application.GetRealWidth(920), |
| | | Height = Application.GetRealHeight(130), |
| | | X = Application.GetRealWidth(80), |
| | | LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, |
| | | }; |
| | | noonFrameLayout.AddChidren(noonRow); |
| | | |
| | | var btnnoontext = new Button |
| | | { |
| | | Width = Application.GetRealWidth(600), |
| | | TextID = MyInternationalizationString.noon, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor, |
| | | }; |
| | | noonRow.AddChidren(btnnoontext); |
| | | |
| | | var noonSelected = new SelectedButton(); |
| | | noonRow.AddChidren(noonSelected); |
| | | |
| | | #endregion |
| | | #region 自定义 |
| | | |
| | | var logiccustomFrameLayout = new FrameLayout |
| | | { |
| | | Height = Application.GetRealHeight(160), |
| | | Y = noonFrameLayout.Bottom, |
| | | }; |
| | | fraview.AddChidren(logiccustomFrameLayout); |
| | | |
| | | var logiccustomRow = new RowLayout |
| | | { |
| | | Y = Application.GetRealHeight(30), |
| | | Width = Application.GetRealWidth(920), |
| | | Height = Application.GetRealHeight(130), |
| | | X = Application.GetRealWidth(80), |
| | | LineColor = ZigbeeColor.Current.LogicBlankBackgroundColor, |
| | | }; |
| | | logiccustomFrameLayout.AddChidren(logiccustomRow); |
| | | |
| | | var btnlogiccustomtext = new Button |
| | | { |
| | | Width = Application.GetRealWidth(600), |
| | | TextID = MyInternationalizationString.logiccustom, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor, |
| | | }; |
| | | logiccustomRow.AddChidren(btnlogiccustomtext); |
| | | |
| | | var logiccustomSelected = new SelectedButton(); |
| | | logiccustomRow.AddChidren(logiccustomSelected); |
| | | #endregion |
| | | int value = -1; |
| | | EventHandler<MouseEventArgs> sunriseclick = (sender,e) => { |
| | | btnsunrisetext.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; |
| | | btnsunsettext.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | btnnoontext.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | btnlogiccustomtext.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | sunriseSelected.Visible = true; |
| | | sunsetSelected.Visible = false; |
| | | noonSelected.Visible = false; |
| | | logiccustomSelected.Visible = false; |
| | | value = 1; |
| | | }; |
| | | sunriseFrameLayout.MouseUpEventHandler += sunriseclick; |
| | | sunriseRow.MouseUpEventHandler += sunriseclick; |
| | | btnsunrisetext.MouseUpEventHandler += sunriseclick; |
| | | sunriseSelected.MouseUpEventHandler += sunriseclick; |
| | | |
| | | EventHandler<MouseEventArgs> sunsetclick = (sender, e) => { |
| | | btnsunrisetext.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | btnsunsettext.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; |
| | | btnnoontext.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | btnlogiccustomtext.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | sunriseSelected.Visible = false; |
| | | sunsetSelected.Visible = true; |
| | | noonSelected.Visible = false; |
| | | logiccustomSelected.Visible = false; |
| | | value = 2; |
| | | }; |
| | | sunsetFrameLayout.MouseUpEventHandler += sunsetclick; |
| | | sunsetRow.MouseUpEventHandler += sunsetclick; |
| | | btnsunsettext.MouseUpEventHandler += sunsetclick; |
| | | sunsetSelected.MouseUpEventHandler += sunsetclick; |
| | | |
| | | EventHandler<MouseEventArgs> noonclick = (sender, e) => |
| | | { |
| | | btnsunrisetext.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | btnsunsettext.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | btnnoontext.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; |
| | | btnlogiccustomtext.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | sunriseSelected.Visible = false; |
| | | sunsetSelected.Visible = false; |
| | | noonSelected.Visible = true; |
| | | logiccustomSelected.Visible = false; |
| | | value = 3; |
| | | }; |
| | | noonFrameLayout.MouseUpEventHandler += sunsetclick; |
| | | noonRow.MouseUpEventHandler += noonclick; |
| | | btnnoontext.MouseUpEventHandler += noonclick; |
| | | noonSelected.MouseUpEventHandler += noonclick; |
| | | |
| | | EventHandler<MouseEventArgs> ogiccustomclick = (sender, e) => |
| | | { |
| | | btnsunrisetext.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | btnsunsettext.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | btnnoontext.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | btnlogiccustomtext.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; |
| | | sunriseSelected.Visible = false; |
| | | sunsetSelected.Visible = false; |
| | | noonSelected.Visible = false; |
| | | logiccustomSelected.Visible = true; |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | flMain.RemoveFromParent(); |
| | | |
| | | if (timeifon.ContainsKey("StartHour")) |
| | | { |
| | | timeifon.Remove("StartHour"); |
| | |
| | | { |
| | | timeifon.Remove("AdjustTime"); |
| | | } |
| | | switch (strvalue) |
| | | if (timeifon.ContainsKey("DateType")) |
| | | { |
| | | case "提前10分钟": |
| | | { |
| | | timeifon.Add("AdjustTime", "-10"); |
| | | } |
| | | break; |
| | | case "提前5分钟": |
| | | { |
| | | timeifon.Add("AdjustTime", "-5"); |
| | | } |
| | | break; |
| | | case "提前1分钟": |
| | | { |
| | | timeifon.Add("AdjustTime", "-1"); |
| | | } |
| | | break; |
| | | case "无": |
| | | { |
| | | timeifon.Add("AdjustTime", "0"); |
| | | } |
| | | break; |
| | | case "延时1分钟": |
| | | { |
| | | timeifon.Add("AdjustTime", "1"); |
| | | } |
| | | break; |
| | | case "延时5分钟": |
| | | { |
| | | timeifon.Add("AdjustTime", "5"); |
| | | } |
| | | break; |
| | | case "延时10分钟": |
| | | { |
| | | timeifon.Add("AdjustTime", "10"); |
| | | } |
| | | break; |
| | | |
| | | timeifon.Remove("DateType"); |
| | | } |
| | | SelectedTimeTypeView(middle, TypeValue); |
| | | timeifon.Add("DateType", "0"); |
| | | timeifon.Add("StartHour", "12"); |
| | | timeifon.Add("StartMin", "0"); |
| | | SelectedTimeTypeView(middle, 0); |
| | | }; |
| | | logiccustomFrameLayout.MouseUpEventHandler += ogiccustomclick; |
| | | logiccustomRow.MouseUpEventHandler += ogiccustomclick; |
| | | btnlogiccustomtext.MouseUpEventHandler += ogiccustomclick; |
| | | logiccustomSelected.MouseUpEventHandler += ogiccustomclick; |
| | | |
| | | #endregion |
| | | Btncomplete.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | if (value == -1) |
| | | { |
| | | return; |
| | | } |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | flMain.RemoveFromParent(); |
| | | if (timeifon.ContainsKey("StartHour")) |
| | | { |
| | | timeifon.Remove("StartHour"); |
| | | } |
| | | if (timeifon.ContainsKey("StartMin")) |
| | | { |
| | | timeifon.Remove("StartMin"); |
| | | } |
| | | if (timeifon.ContainsKey("AdjustTime")) |
| | | { |
| | | timeifon.Remove("AdjustTime"); |
| | | } |
| | | if (timeifon.ContainsKey("DateType")) |
| | | { |
| | | timeifon.Remove("DateType"); |
| | | } |
| | | timeifon.Add("DateType", value.ToString()); |
| | | timeifon.Add("AdjustTime", "0"); |
| | | SelectedTimeTypeView(middle, value); |
| | | }; |
| | | |
| | | } |
| | | |
| | | } |
| | | } |