using System; using System.Collections.Generic; using Shared; using Shared.Common; using Shared.Phone; using Shared.R; namespace Shared.Phone.Device.Logic { public class Cycle : FrameLayout { Action action; public Cycle(Action action) { this.action = action; } public void Show() { Tag = "Logic"; #region 最上面的布局代码 var topRowLayout = new RowLayout { BackgroundColor = ZigbeeColor.Current.LogicTopBackgroundColor, Height = Application.GetRealHeight(184), LineColor = ZigbeeColor.Current.LogicRowLayoutTopLineColor, }; this.AddChidren(topRowLayout); var titleName = new Button { TextSize = 17, TextColor = ZigbeeColor.Current.LogicTextBlackColor, TextAlignment = TextAlignment.CenterLeft, X = Application.GetRealWidth(176), Width = Application.GetRealWidth(600), Height = Application.GetRealHeight(69), Y = Application.GetRealHeight(92), TextID = MyInternationalizationString.cycle, }; 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(); //if (action != null) // action(); }; var back = new Button { Width = Application.GetRealWidth(30), Height = Application.GetRealHeight(51), X = Application.GetRealWidth(81), Y = Application.GetRealHeight(98), //Gravity = Gravity.CenterVertical; UnSelectedImagePath = "ZigeeLogic/back.png", }; topRowLayout.AddChidren(back); back.MouseDownEventHandler += (sender, e) => { //if (action != null) // action(); RemoveFromParent(); }; #endregion var middle = new FrameLayout { Y = topRowLayout.Bottom, Height = Application.GetRealHeight(1920 - 184), BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor, }; this.AddChidren(middle); var btnsave = new Button { Y= middle.Height-Application.GetRealHeight(260), X = Application.GetRealWidth(85), Height = Application.GetRealHeight(130), Width = Application.GetRealWidth(910), Radius = (uint)Application.GetRealHeight(60), BackgroundColor = ZigbeeColor.Current.LogicBtnSaveBackgroundColor, TextID = MyInternationalizationString.Save, TextColor = ZigbeeColor.Current.LogicBtnSaveTextColor, TextSize = 16, }; middle.AddChidren(btnsave); #region ----执行一次---- var onceFramelayout = new FrameLayout { Height = Application.GetRealHeight(160), BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor, }; middle.AddChidren(onceFramelayout); var onceIconBtn = new Button { Width = Application.GetRealWidth(81), Height = Application.GetRealHeight(81), X = Application.GetRealWidth(58), Y = Application.GetRealHeight(55), UnSelectedImagePath = "ZigeeLogic/point.png", }; onceFramelayout.AddChidren(onceIconBtn); var onceRow = new RowLayout { Y = Application.GetRealHeight(30), Width = Application.GetRealWidth(850), Height = Application.GetRealHeight(130), X = Application.GetRealWidth(176), LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, }; onceFramelayout.AddChidren(onceRow); var onceTextBtn = new Button { Text = Language.StringByID(MyInternationalizationString.executeonce), TextAlignment = TextAlignment.CenterLeft, TextColor = ZigbeeColor.Current.LogicTextBlackColor, TextSize = 15, }; onceRow.AddChidren(onceTextBtn); var onceBackBtn = new SelectedButton(789); onceRow.AddChidren(onceBackBtn); #endregion #region ----每天---- var everydayFramelayout = new FrameLayout { Height = Application.GetRealHeight(160), BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor, Y = onceFramelayout.Bottom, }; middle.AddChidren(everydayFramelayout); var everydayIconBtn = new Button { Width = Application.GetRealWidth(81), Height = Application.GetRealHeight(81), X = Application.GetRealWidth(58), Y = Application.GetRealHeight(55), UnSelectedImagePath = "ZigeeLogic/point.png", }; everydayFramelayout.AddChidren(everydayIconBtn); var everydayRow = new RowLayout { Y = Application.GetRealHeight(30), Width = Application.GetRealWidth(850), Height = Application.GetRealHeight(130), X = Application.GetRealWidth(176), LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, }; everydayFramelayout.AddChidren(everydayRow); var everydayTxetBtn = new Button { TextID = MyInternationalizationString.everyday, TextAlignment = TextAlignment.CenterLeft, TextColor = ZigbeeColor.Current.LogicTextBlackColor, TextSize = 15, }; everydayRow.AddChidren(everydayTxetBtn); var everydayBack = new SelectedButton(789); everydayRow.AddChidren(everydayBack); #endregion #region ----每周---- var weekFramelayout = new FrameLayout { Height = Application.GetRealHeight(160), Y = everydayFramelayout.Bottom, BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor, }; middle.AddChidren(weekFramelayout); var weekIconBtn = new Button { Width = Application.GetRealWidth(81), Height = Application.GetRealHeight(81), UnSelectedImagePath = "ZigeeLogic/point.png", X = Application.GetRealWidth(58), Y = Application.GetRealHeight(55), }; weekFramelayout.AddChidren(weekIconBtn); var weekRow = new RowLayout { Y = Application.GetRealHeight(30), Width = Application.GetRealWidth(850), Height = Application.GetRealHeight(130), X = Application.GetRealWidth(176), LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, }; weekFramelayout.AddChidren(weekRow); var weekTextBtn = new Button { TextAlignment = TextAlignment.CenterLeft, TextID = MyInternationalizationString.weekly, TextColor = ZigbeeColor.Current.LogicTextBlackColor, TextSize = 15, }; weekRow.AddChidren(weekTextBtn); var weekBack = new Button { Width = Application.GetRealWidth(58), Height = Application.GetRealHeight(58), UnSelectedImagePath = "ZigeeLogic/next.png", X = Application.GetRealWidth(789), Gravity = Gravity.CenterVertical, }; weekRow.AddChidren(weekBack); #endregion #region ----每月---- var monthlyFramelayout = new FrameLayout { Height = Application.GetRealHeight(160), Y = weekFramelayout.Bottom, BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor, }; middle.AddChidren(monthlyFramelayout); var monthlyIconBtn = new Button { Width = Application.GetRealWidth(81), Height = Application.GetRealHeight(81), UnSelectedImagePath = "ZigeeLogic/point.png", X = Application.GetRealWidth(58), Y = Application.GetRealHeight(55), }; monthlyFramelayout.AddChidren(monthlyIconBtn); var monthlyRow = new RowLayout { Y = Application.GetRealHeight(30), Width = Application.GetRealWidth(850), Height = Application.GetRealHeight(130), X = Application.GetRealWidth(176), LineColor = ZigbeeColor.Current.LogicBlankBackgroundColor, }; monthlyFramelayout.AddChidren(monthlyRow); var monthlyTextBtn = new Button { TextAlignment = TextAlignment.CenterLeft, TextID = MyInternationalizationString.monthly, TextColor = ZigbeeColor.Current.LogicTextBlackColor, TextSize = 15, }; monthlyRow.AddChidren(monthlyTextBtn); var monthlyBack = new Button { Width = Application.GetRealWidth(58), Height = Application.GetRealHeight(58), UnSelectedImagePath = "ZigeeLogic/next.png", X = Application.GetRealWidth(789), Gravity = Gravity.CenterVertical, }; monthlyRow.AddChidren(monthlyBack); #endregion #region ----每年---- var yearFramelayout = new FrameLayout { Height = Application.GetRealHeight(160), Y = monthlyFramelayout.Bottom, BackgroundColor = ZigbeeColor.Current.LogicBlankBackgroundColor, }; //middle.AddChidren(yearFramelayout); var yearIconBtn = new Button { Width = Application.GetRealWidth(81), Height = Application.GetRealHeight(81), UnSelectedImagePath = "ZigeeLogic/point.png", X = Application.GetRealWidth(58), Y = Application.GetRealHeight(55), }; yearFramelayout.AddChidren(yearIconBtn); var yearRow = new RowLayout { Y = Application.GetRealHeight(30), Width = Application.GetRealWidth(850), Height = Application.GetRealHeight(130), X = Application.GetRealWidth(176), LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, }; yearFramelayout.AddChidren(yearRow); var yearTextBtn = new Button { TextAlignment = TextAlignment.CenterLeft, TextID = MyInternationalizationString.everyyear, TextColor = ZigbeeColor.Current.LogicTextBlackColor, TextSize = 15, }; yearRow.AddChidren(yearTextBtn); var yearBack = new Button { Width = Application.GetRealWidth(58), Height = Application.GetRealHeight(58), UnSelectedImagePath = "ZigeeLogic/next.png", X = Application.GetRealWidth(789), Gravity = Gravity.CenterVertical, }; yearRow.AddChidren(yearBack); EventHandler yearclick = (sender, e) => { var everyyearPage = new EveryyearPage(); UserView.HomePage.Instance.AddChidren(everyyearPage); UserView.HomePage.Instance.PageIndex += 1; everyyearPage.Show(); }; yearFramelayout.MouseUpEventHandler += yearclick; yearTextBtn.MouseUpEventHandler += yearclick; yearBack.MouseUpEventHandler += yearclick; yearIconBtn.MouseUpEventHandler += yearclick; yearRow.MouseUpEventHandler += yearclick; #endregion EventHandler onceclick = (sender, e) => { onceBackBtn.Visible = true; everydayBack.Visible = false; }; onceTextBtn.MouseUpEventHandler += onceclick; onceBackBtn.MouseUpEventHandler += onceclick; onceFramelayout.MouseUpEventHandler += onceclick; onceIconBtn.MouseUpEventHandler += onceclick; onceRow.MouseUpEventHandler += onceclick; EventHandler everydayclick = (sender, e) => { onceBackBtn.Visible = false; everydayBack.Visible = true; }; everydayFramelayout.MouseUpEventHandler += everydayclick; everydayTxetBtn.MouseUpEventHandler += everydayclick; everydayBack.MouseUpEventHandler += everydayclick; everydayIconBtn.MouseUpEventHandler += everydayclick; everydayRow.MouseUpEventHandler += everydayclick; EventHandler weekclick = (sender, e) => { onceBackBtn.Visible = false; everydayBack.Visible = false; var weekPage = new WeekPage(); UserView.HomePage.Instance.AddChidren(weekPage); UserView.HomePage.Instance.PageIndex += 1; weekPage.Show(weekTextBtn.Text); }; weekFramelayout.MouseUpEventHandler += weekclick; weekTextBtn.MouseUpEventHandler += weekclick; weekBack.MouseUpEventHandler += weekclick; weekIconBtn.MouseUpEventHandler += weekclick; weekRow.MouseUpEventHandler += weekclick; EventHandler monthlyclick = (sender, e) => { onceBackBtn.Visible = false; everydayBack.Visible = false; var everymonthPage = new EverymonthPage(); UserView.HomePage.Instance.AddChidren(everymonthPage); UserView.HomePage.Instance.PageIndex += 1; everymonthPage.Show(monthlyTextBtn.Text); }; monthlyFramelayout.MouseUpEventHandler += monthlyclick; monthlyIconBtn.MouseUpEventHandler += monthlyclick; monthlyRow.MouseUpEventHandler += monthlyclick; monthlyTextBtn.MouseUpEventHandler += monthlyclick; monthlyBack.MouseUpEventHandler += monthlyclick; if (Common.Logic.CurrentLogic.TimeAttribute.Repeat == 0) { onceBackBtn.Visible = true; everydayBack.Visible = false; } else if (Common.Logic.CurrentLogic.TimeAttribute.Repeat == 2) { onceBackBtn.Visible = false; everydayBack.Visible = true; } else { onceBackBtn.Visible = false; everydayBack.Visible = false; } btnsave.MouseUpEventHandler += (sedder, e) => { if (!onceBackBtn.Visible && !everydayBack.Visible) { var alert = new Alert(Language.StringByID(MyInternationalizationString.Prompt), Language.StringByID(MyInternationalizationString.selectweek), Language.StringByID(MyInternationalizationString.complete)); alert.Show(); return; } if (onceBackBtn.Visible) { Common.Logic.CurrentLogic.TimeAttribute.Repeat = 0; } if (everydayBack.Visible) { Common.Logic.CurrentLogic.TimeAttribute.Repeat = 2; } RemoveFromParent(); action(); }; } } }