| | |
| | | public PirMain() |
| | | { |
| | | Tag = "PirMain"; |
| | | GetPirDeviceList(); |
| | | } |
| | | /// <summary> |
| | | /// 临时储存设备类型列表 |
| | |
| | | Text = "mini智能遥控器", |
| | | }; |
| | | deviceListFLayout.AddChidren(deviceNameBtn); |
| | | if (Pir.pirDeviceList.Count!=0) { |
| | | deviceNameBtn.Text = Pir.pirDeviceList[0].name; |
| | | Pir.currPir = Pir.pirDeviceList[0]; |
| | | } |
| | | |
| | | //下拉图标 |
| | | var dropdownIconBtn = new Button |
| | |
| | | deviceNameBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | |
| | | #region 区域弹框界面 |
| | | FrameLayout fLayout = new FrameLayout |
| | | { |
| | | BackgroundColor = CSS.CSS_Color.viewTrans60lucence, |
| | | }; |
| | | this.AddChidren(fLayout); |
| | | fLayout.MouseUpEventHandler += (sender1, e1) => |
| | | { |
| | | fLayout.RemoveFromParent(); |
| | | }; |
| | | |
| | | FrameLayout iconFLyout = new FrameLayout |
| | | { |
| | | X = Application.GetRealWidth(205), |
| | | Y = Application.GetRealHeight(314), |
| | | Width = Application.GetRealWidth(160), |
| | | Height = Application.GetRealHeight(21 + 44), |
| | | //BackgroundImagePath = "LogicIcon/bjicon.png", |
| | | }; |
| | | fLayout.AddChidren(iconFLyout); |
| | | |
| | | FrameLayout textFLyout = new FrameLayout |
| | | { |
| | | X = Application.GetRealWidth(8), |
| | | Y = Application.GetRealHeight(14), |
| | | Width = Application.GetRealWidth(144), |
| | | Height = Application.GetRealHeight(44), |
| | | }; |
| | | VerticalScrolViewLayout vv = new VerticalScrolViewLayout |
| | | { |
| | | X = Application.GetRealWidth(8), |
| | | Y = Application.GetRealHeight(14), |
| | | Width = Application.GetRealWidth(144), |
| | | Height = Application.GetRealHeight(44 * 4), |
| | | }; |
| | | |
| | | if (Pir.pirDeviceList.Count >4) |
| | | { |
| | | iconFLyout.Height = Application.GetRealHeight(21 + 44 * 4); |
| | | iconFLyout.AddChidren(vv); |
| | | iconFLyout.BackgroundImagePath = "PirIcon/4.png"; |
| | | } |
| | | else |
| | | { |
| | | |
| | | iconFLyout.AddChidren(textFLyout); |
| | | iconFLyout.Height = Application.GetRealHeight(21 + 44 * Pir.pirDeviceList.Count); |
| | | textFLyout.Height = Application.GetRealHeight(44 * Pir.pirDeviceList.Count); |
| | | iconFLyout.BackgroundImagePath = $"PirIcon/{Pir.pirDeviceList.Count}.png"; |
| | | } |
| | | #endregion |
| | | |
| | | for (int i = 0; i < Pir.pirDeviceList.Count; i++) |
| | | { |
| | | var pirJson = Pir.pirDeviceList[i]; |
| | | View.PirNameView pirNameView = new View.PirNameView(); |
| | | if (Pir.pirDeviceList.Count > 4) |
| | | { |
| | | vv.AddChidren(pirNameView.FLayoutView()); |
| | | } |
| | | else |
| | | { |
| | | pirNameView.frameLayout.Y = Application.GetRealHeight(i * 44); |
| | | textFLyout.AddChidren(pirNameView.FLayoutView()); |
| | | } |
| | | pirNameView.btnName.Text = pirJson.name; |
| | | pirNameView.btnClick.Tag = pirJson; |
| | | pirNameView.btnClick.MouseUpEventHandler += (sender2, e2) => |
| | | { |
| | | fLayout.RemoveFromParent(); |
| | | deviceNameBtn.Text = pirJson.name; |
| | | Pir.currPir = pirJson; |
| | | |
| | | }; |
| | | if (Pir.pirDeviceList.Count - 1 == i) |
| | | { |
| | | ///改变最后那条一个线的颜色,界面显示效果作用; |
| | | pirNameView.btnLine.BackgroundColor = CSS.CSS_Color.view; |
| | | } |
| | | } |
| | | |
| | | }; |
| | | |
| | |
| | | GetIconAndText(i, deviceIconBtn, iconNameBtn); |
| | | clickBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | |
| | | //1=空调;2=电视;3=风扇;4=机顶盒;5=DVD/EVD/VCD;6=投影仪;7=自定义; |
| | | int if_value = int.Parse(clickBtn.Tag.ToString()); |
| | | if (if_value == 7) |
| | | { |
| | | Method method = new Method(); |
| | | method.AddControl(this); |
| | | method.AddControl(this,(control) => { |
| | | AddButton addButton = new AddButton(); |
| | | MainPage.BasePageView.AddChidren(addButton); |
| | | addButton.Show(control); |
| | | MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; |
| | | }); |
| | | } |
| | | else |
| | | { |
| | |
| | | |
| | | } |
| | | GetDeviceTypeList(); |
| | | |
| | | } |
| | | /// <summary> |
| | | /// 获取品牌支持 |
| | |
| | | case 1: |
| | | { |
| | | //空调 |
| | | type = "ac-"+SPK.AcStandard; |
| | | type = "ac-"+SPK.AcIr; |
| | | } |
| | | break; |
| | | case 2: |
| | |
| | | }, id, "品牌列表"); |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 获取红外设备列表 |
| | | /// </summary> |
| | | private void GetPirDeviceList( ) |
| | | { |
| | | |
| | | //加载log |
| | | Loading loading = new Loading(); |
| | | this.AddChidren(loading); |
| | | HDL_ON.DAL.Server.ResponsePackNew responsePackNew = null; |
| | | loading.Start(); |
| | | new System.Threading.Thread(() => |
| | | { |
| | | try |
| | | { |
| | | responsePackNew = PirSend.GetDeviceList("ir.module"); |
| | | } |
| | | catch { } |
| | | finally |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | loading.Hide(); |
| | | try { |
| | | if (responsePackNew != null && responsePackNew.Code == "0" && responsePackNew.Data.ToString() != "") |
| | | { |
| | | var jobject = Newtonsoft.Json.Linq.JObject.Parse(responsePackNew.Data.ToString()); |
| | | string list = jobject["list"].ToString(); |
| | | |
| | | var jArray = Newtonsoft.Json.Linq.JArray.Parse(list); |
| | | for (int a = 0; a < jArray.Count; a++) |
| | | { |
| | | var jay = jArray[a]; |
| | | string spk = jay["spk"].ToString(); |
| | | if (spk == "ir.module") |
| | | { |
| | | //数据返序列化为Logic对象 |
| | | var str = Newtonsoft.Json.JsonConvert.SerializeObject(jay); |
| | | var pirJosn = Newtonsoft.Json.JsonConvert.DeserializeObject<Pir>(str); |
| | | if (pirJosn != null) |
| | | { |
| | | if (null == Pir.pirDeviceList.Find((c) => c.deviceId == pirJosn.deviceId)) |
| | | { |
| | | |
| | | Pir.pirDeviceList.Add(pirJosn); |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | } |
| | | else |
| | | { |
| | | Method method = new Method(); |
| | | method.ErrorShow(responsePackNew); |
| | | } |
| | | } |
| | | catch { } |
| | | |
| | | }); |
| | | } |
| | | |
| | | }) |
| | | { IsBackground = true }.Start(); |
| | | } |
| | | |
| | | } |
| | | |
| | | } |