using System; using Shared; using System.Collections.Generic; namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView { public class TemperatureView { /// /// view /// /// 弹窗父控件 /// 之前状态值 /// 返回结果 public void FLayoutView(FrameLayout frameLayout, string stateValue, Action action) { FrameLayout frame = new FrameLayout { BackgroundColor = CSS.CSS_Color.viewTrans60lucence, }; frameLayout.AddChidren(frame); LogicView.TimeView view = new LogicView.TimeView(); view.FLayoutView(frame); //取消点击事件 view.btnCancel.MouseUpEventHandler += (sender1, e1) => { //移除fLayout界面 frame.RemoveFromParent(); }; //初始化列表 var temperatureList = new List(); for (int i = 16; i < 32; i++) { //添加数据 temperatureList.Add(i.ToString() + "℃"); temperatureList.Add((i + 0.5).ToString() + "℃"); } //加载数据界面的设置方法(列表互不联动) view.mUIPickerView.setNPicker(temperatureList, null, null); //默认初始选中状态 view.mUIPickerView.setCurrentItems(9, 0, 0); //定义一个局部变量记录选中时间 string temperature = "25℃"; for (int i = 0; i < temperatureList.Count; i++) { if (temperatureList[i] == stateValue) { //更新状态 view.mUIPickerView.setCurrentItems(i, 0, 0); //更新状态 temperature = temperatureList[i]; break; } } //选中时间回调方法,时间变化一次回调一次 view.mUIPickerView.OnSelectChangeEvent += (index1, index2, index3) => { temperature = temperatureList[index1]; }; //确定点击事件 view.btnConfirm.MouseUpEventHandler += (sender2, e2) => { action(temperature); frame.RemoveFromParent(); }; } } }