| | |
| | | public class PublicInterface |
| | | { |
| | | |
| | | |
| | | /// <summary> |
| | | /// 单选择 |
| | | /// </summary> |
| | |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 单选择 |
| | | /// </summary> |
| | | /// <param name="frame">显示在哪个界面的父控件</param> |
| | | /// <param name="list">显示数据源</param> |
| | | /// <param name="titleText">标题文本</param> |
| | | /// <param name="stateText">之前状态文本</param> |
| | | /// <param name="completeAction">完成返回值</param> |
| | | /// <param name="cancelAction">取消返回值</param> |
| | | public void SingleSelectionShow(FrameLayout frame, List<string> list, int titleText, string stateText, Action<string> completeAction, Action cancelAction) |
| | | { |
| | | FrameLayout frameLayout = new FrameLayout |
| | | { |
| | | BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor, |
| | | }; |
| | | frame.AddChidren(frameLayout); |
| | | CompleteView view = new CompleteView(); |
| | | view.Btntitle.TextID = titleText; |
| | | frameLayout.AddChidren(view.Show(list.Count)); |
| | | UserView.HomePage.Instance.ScrollEnabled = false; |
| | | EventHandler<MouseEventArgs> cancelClick= (sender, e) => |
| | | { |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | //移除fLayout界面 |
| | | frameLayout.RemoveFromParent(); |
| | | cancelAction(); |
| | | }; |
| | | view.Btncancel.MouseUpEventHandler += cancelClick; |
| | | frameLayout.MouseUpEventHandler += cancelClick; |
| | | ///定义一个Btn记录选中状态 |
| | | Button checkIconBtn = new Button |
| | | { |
| | | Tag = "unknown", |
| | | }; |
| | | Button checkTextBtn = new Button |
| | | { |
| | | Tag = "unknown", |
| | | }; |
| | | for (int i = 0; i < list.Count; i++) |
| | | { |
| | | string str = list[i]; |
| | | mFunView mFun = new mFunView(); |
| | | mFun.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; |
| | | mFun.titleBtn.SelectedTextColor = ZigbeeColor.Current.LogicBtnSelectedColor; |
| | | mFun.frameLayout.Y = Application.GetRealHeight(140 + 20 + 160 * i); |
| | | view.fraView.AddChidren(mFun.Show()); |
| | | mFun.titleBtn.Text = str; |
| | | mFun.clickviewBtn.Tag = str;//标记 |
| | | if (list.Count - 1 == i) |
| | | { |
| | | //改变最后一条的颜色 |
| | | mFun.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; |
| | | } |
| | | if (stateText == str) |
| | | { |
| | | //图标改变 |
| | | checkIconBtn.Visible = false; |
| | | mFun.selectedIconBtn.Visible = true; |
| | | checkIconBtn = mFun.selectedIconBtn; |
| | | checkIconBtn.Tag = mFun.clickviewBtn.Tag.ToString(); |
| | | //字体改变 |
| | | checkTextBtn.IsSelected = false; |
| | | mFun.titleBtn.IsSelected = true; |
| | | checkTextBtn = mFun.titleBtn; |
| | | |
| | | } |
| | | //点击事件 |
| | | mFun.clickviewBtn.MouseUpEventHandler += (sender1, e1) => |
| | | { |
| | | //图标改变 |
| | | checkIconBtn.Visible = false; |
| | | mFun.selectedIconBtn.Visible = true; |
| | | checkIconBtn = mFun.selectedIconBtn; |
| | | checkIconBtn.Tag = mFun.clickviewBtn.Tag.ToString(); |
| | | //字体改变 |
| | | checkTextBtn.IsSelected = false; |
| | | mFun.titleBtn.IsSelected = true; |
| | | checkTextBtn = mFun.titleBtn; |
| | | }; |
| | | |
| | | } |
| | | view.Btncomplete.MouseUpEventHandler += (sender1, e1) => |
| | | { |
| | | if (checkIconBtn.Tag.ToString() == "unknown") |
| | | { |
| | | return; |
| | | } |
| | | completeAction(checkIconBtn.Tag.ToString()); |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | //移除fLayout界面 |
| | | frameLayout.RemoveFromParent(); |
| | | }; |
| | | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 温湿度方法 |
| | | /// </summary> |
| | | /// <param name="frame">显示在哪个界面的父控件</param> |
| | | /// <param name="common">当前设备</param> |
| | | /// <param name="state1">之前状态</param> |
| | | /// <param name="symbol">符号(%,℃)</param> |
| | | /// <param name="state1">之前状态(比较符号)</param> |
| | | /// <param name="state2">之前状态</param> |
| | | /// <param name="action">返回值</param> |
| | | public void TemperatureShow1(FrameLayout frameLayout, CommonDevice common, string state1, string state2, Action<string, string> action) |
| | | public void TemperatureShow1(FrameLayout frame, string tlite,string symbol, string state1, string state2, Action<string, string> action, Action cancelAction) |
| | | { |
| | | //FrameLayout frameLayout = new FrameLayout |
| | | //{ |
| | | // BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor, |
| | | //}; |
| | | //frame.AddChidren(frameLayout); |
| | | FrameLayout frameLayout = new FrameLayout |
| | | { |
| | | BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor, |
| | | }; |
| | | frame.AddChidren(frameLayout); |
| | | CompleteView view = new CompleteView(); |
| | | view.Btntitle.Text= LocalDevice.Current.GetDeviceEpointName(common); |
| | | view.Btntitle.Text= tlite; |
| | | frameLayout.AddChidren(view.Show(4)); |
| | | UserView.HomePage.Instance.ScrollEnabled = false; |
| | | view.Btncancel.MouseUpEventHandler += (sender, e) => |
| | | |
| | | EventHandler<MouseEventArgs> cancelClick = (sender, e) => |
| | | { |
| | | UserView.HomePage.Instance.ScrollEnabled = true; |
| | | //移除fLayout界面 |
| | | frameLayout.RemoveFromParent(); |
| | | cancelAction(); |
| | | }; |
| | | view.Btncancel.MouseUpEventHandler += cancelClick; |
| | | frameLayout.MouseUpEventHandler += cancelClick; |
| | | |
| | | #region 布局View |
| | | var PickerViewfra = new FrameLayout |
| | |
| | | |
| | | var mList1 = new List<string> { ">", "<", "=", "≥", "≤" }; |
| | | var mList2 = new List<string>(); |
| | | var mList3 = new List<string>(); |
| | | var mList3 = new List<string>() { symbol }; |
| | | for (int i = 1; i <= 100; i++) |
| | | { |
| | | mList2.Add(i.ToString()); |
| | | } |
| | | switch (common.Type) |
| | | { |
| | | case DeviceType.TemperatureSensor: |
| | | { |
| | | var temperatureSensor = common as TemperatureSensor; |
| | | if (temperatureSensor.SensorDiv == 1) |
| | | { |
| | | mList3.Add("℃"); |
| | | } |
| | | else |
| | | { |
| | | mList3.Add("%"); |
| | | |
| | | } |
| | | } |
| | | break; |
| | | } |
| | | |
| | | |
| | | mUIPickerView.setNPicker(mList1, mList2, mList3); |
| | | |
| | |
| | | //返回索引值 |
| | | index1 = s1; |
| | | index2 = s2; |
| | | |
| | | string relationValueStr = ""; |
| | | switch (mList1[index1]) |
| | | { |
| | | case ">": |
| | | { |
| | | relationValueStr = "0"; |
| | | } |
| | | break; |
| | | case "<": |
| | | { |
| | | relationValueStr = "2"; |
| | | |
| | | } |
| | | break; |
| | | case "=": |
| | | { |
| | | relationValueStr = "1"; |
| | | |
| | | } |
| | | break; |
| | | case "≥": |
| | | { |
| | | |
| | | relationValueStr = "6"; |
| | | |
| | | } |
| | | break; |
| | | case "≤": |
| | | { |
| | | relationValueStr = "7"; |
| | | } |
| | | break; |
| | | } |
| | | ///温度进率转换*100 |
| | | string tempValueStr = (int.Parse(mList2[index2]) * 100).ToString(); |
| | | action(relationValueStr, tempValueStr); |
| | | }; |
| | | view.Btncomplete.MouseUpEventHandler += (sender1, e1) => |
| | | { |
| | |
| | | }; |
| | | |
| | | } |
| | | public void TemperatureShow(FrameLayout frameLayout, CommonDevice common, string state1, string state2, Action<string, string> action) |
| | | public void TemperatureShow(FrameLayout frameLayout, string symbol, string state1, string state2, Action<string, string> action) |
| | | { |
| | | #region 布局View |
| | | var PickerViewfra = new FrameLayout |
| | |
| | | |
| | | var mList1 = new List<string> { ">", "<", "=", "≥", "≤" }; |
| | | var mList2 = new List<string>(); |
| | | var mList3 = new List<string>(); |
| | | var mList3 = new List<string>() { symbol }; |
| | | for (int i = 1; i <= 100; i++) |
| | | { |
| | | mList2.Add(i.ToString()); |
| | | } |
| | | switch (common.Type) |
| | | { |
| | | case DeviceType.TemperatureSensor: |
| | | { |
| | | var temperatureSensor = common as TemperatureSensor; |
| | | if (temperatureSensor.SensorDiv == 1) |
| | | { |
| | | mList3.Add("℃"); |
| | | } |
| | | else |
| | | { |
| | | mList3.Add("%"); |
| | | |
| | | } |
| | | } |
| | | break; |
| | | } |
| | | |
| | | mUIPickerView.setNPicker(mList1, mList2, mList3); |
| | |
| | | }; |
| | | } |
| | | break; |
| | | case "时间": { |
| | | case "时间": |
| | | { |
| | | list = new List<string> { |
| | | Language.StringByID(MyInternationalizationString.immediateexecution), |
| | | Language.StringByID(MyInternationalizationString.timeframe), |
| | |
| | | }; |
| | | } |
| | | break; |
| | | |
| | | case "空气质量传感器": |
| | | { |
| | | list = new List<string> { |
| | | Language.StringByID(MyInternationalizationString.kongqizhiliang), |
| | | Language.StringByID(MyInternationalizationString.pm25), |
| | | Language.StringByID(MyInternationalizationString.co2), |
| | | Language.StringByID(MyInternationalizationString.sensortemperature), |
| | | Language.StringByID(MyInternationalizationString.sensorhumidity), |
| | | }; |
| | | } |
| | | break; |
| | | case "空气质量": |
| | | { |
| | | list = new List<string> { |
| | | Language.StringByID(MyInternationalizationString.you), |
| | | Language.StringByID(MyInternationalizationString.liang), |
| | | Language.StringByID(MyInternationalizationString.cha), |
| | | }; |
| | | } |
| | | break; |
| | | case "pm2.5": |
| | | { |
| | | list = new List<string> { |
| | | Language.StringByID(MyInternationalizationString.pmyou), |
| | | Language.StringByID(MyInternationalizationString.pmliang), |
| | | Language.StringByID(MyInternationalizationString.pmqingdu), |
| | | Language.StringByID(MyInternationalizationString.pmzhongdu), |
| | | }; |
| | | } |
| | | break; |
| | | case "co2": |
| | | { |
| | | list = new List<string> { |
| | | Language.StringByID(MyInternationalizationString.co2qingxin), |
| | | Language.StringByID(MyInternationalizationString.co2huizhuo), |
| | | Language.StringByID(MyInternationalizationString.co2queyang), |
| | | Language.StringByID(MyInternationalizationString.co2yanzhongqueyang), |
| | | }; |
| | | } |
| | | break; |
| | | |
| | | } |
| | | return list; |