using System; using System.Collections.Generic; using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; using Shared; namespace HDL_ON.UI.UI2.PersonalCenter.PirDevice.View { public class Buttons { /// /// 动态加载按钮列表 /// /// 父控件 /// 数据列表 /// 回调 /// 表示多少行 /// 表示一行加载多少个按钮 public void AddButton(FrameLayout buttonFLayout, List buttonList, Action action, int line = 7, int sum = 3) { VerticalScrolViewLayout vv = new VerticalScrolViewLayout(); buttonFLayout.AddChidren(vv); for (int i = 0; i < line; i++) { var currFLayout = new FrameLayout { Height = Application.GetRealHeight(16 + 44) }; vv.AddChidren(currFLayout); for (int a = i * sum + 1, b = 0; a <= buttonList.Count; a++, b++) { var name = buttonList[a - 1]; var nameBtn = new Button { Y = Application.GetRealHeight(16), X = Application.GetRealWidth(24 + (98 + 16) * b), // Gravity=Gravity.CenterVertical, Width = Application.GetRealWidth(98), Height = Application.GetRealHeight(44), Text = name, TextSize = TextSize.text16, TextColor = CSS.CSS_Color.textColor, TextAlignment = TextAlignment.Center, Radius = (uint)Application.GetRealHeight(8), BorderWidth = 1, BorderColor = CSS.CSS_Color.textCancelColor, }; currFLayout.AddChidren(nameBtn); nameBtn.MouseUpEventHandler += (sender, e) => { action(nameBtn.Text); }; if (a % sum == 0) { break; } } if (i == line - 1) { //最后一个元素后面加一个20高度间隔 vv.AddChidren(new FrameLayout { Height = Application.GetRealHeight(20) }); } } } /// /// 获取列表 /// /// 标记值 /// public List GetList(string tag) { List list = new List(); switch (tag) { case "默认按钮": { list.Add(Language.StringByID(StringId.dianyuan)); list.Add(Language.StringByID(StringId.yinliangjia)); list.Add(Language.StringByID(StringId.yinliangjian)); list.Add(Language.StringByID(StringId.pindaojia)); list.Add(Language.StringByID(StringId.pindaojian)); list.Add(Language.StringByID(StringId.shang)); list.Add(Language.StringByID(StringId.xia)); list.Add(Language.StringByID(StringId.zuo)); list.Add(Language.StringByID(StringId.you)); list.Add(Language.StringByID(StringId.jingyin)); list.Add(Language.StringByID(StringId.queren)); list.Add(Language.StringByID(StringId.bofang)); list.Add(Language.StringByID(StringId.xiayibu)); list.Add(Language.StringByID(StringId.tuichu)); list.Add(Language.StringByID(StringId.caidan)); list.Add(Language.StringByID(StringId.zanting)); list.Add(Language.StringByID(StringId.fanhui)); list.Add(Language.StringByID(StringId.tingzhi)); list.Add(Language.StringByID(StringId.zhuye)); list.Add(Language.StringByID(StringId.kuaijin)); list.Add(Language.StringByID(StringId.kuaitui)); list.Add(Language.StringByID(StringId.dingshi)); } break; } return list; } } }