using Shared; using System; using System.Collections.Generic; using System.Text; using HDL_ON.UI.CSS; using HDL_ON.Entity; using HDL_ON.DriverLayer; using HDL_ON.UI.Music; using HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock; namespace HDL_ON.UI.UI2.FuntionControlView.Aks { public class AksPage : FrameLayout { #region ■ 变量声明___________________________ /// /// 设备 /// private Function device; /// /// 上一级界面的设备名字控件 /// private Button btnDeviceName; /// /// 上一级界面的房间名字控件 /// private Button btnRoomName; /// /// 头部布局 /// private TopView topView; /// /// 当前设备名称 /// private Button btnCurrDeviceName; /// /// 区域 /// private Button btnCurrDeviceRoom; /// /// 表示来自那个界面 /// private CommonMethod.Comerom comerom; /// /// 删除设备后需要更新界面的回调 /// public Action action; public VerticalScrolViewLayout vv; #endregion public AksPage() { } /// /// 构造函数 /// /// 设备 /// 上一级界面的设备名字控件(注:不能传null,没有可以传new Button()) /// 上一级界面的房间名字控件(注:不能传null,没有可以传new Button()) public AksPage(Function function, Button btnDeviceName, Button btnRoomName, CommonMethod.Comerom comerom, Action action) { this.device = function; this.btnDeviceName = btnDeviceName; this.btnRoomName = btnRoomName; this.comerom = comerom; this.action = action; } public void Show() { //初始化UI this.InitTop(); this.InitMiddle(); //初始化事件 this.EventListener(); //读取数据 this.ReadData(); } /// /// 初始化头部界面 /// private void InitTop() { this.BackgroundColor = MusicColor.ViewColor; this.topView = new TopView(); this.topView.setBtn.Visible = true; this.topView.topNameBtn.Text= this.device.name; this.AddChidren(topView.TopFLayoutView()); } /// /// 初始化中部界面 /// private void InitMiddle() { this.vv = new VerticalScrolViewLayout() { Y = topView.fLayout.Bottom, Height = Application.GetRealHeight(H_W.H - H_W.T_Height), }; var middleFl = new FrameLayout { }; this.vv.AddChidren(middleFl); var whiteFl = new FrameLayout { }; middleFl.AddChidren(whiteFl); } /// /// 注册事件 /// private void EventListener() { //返回 this.topView.clickBackBtn.MouseUpEventHandler += (sender, e) => { this.RemoveFromParent(); }; //设置 this.topView.clickSetBtn.MouseUpEventHandler += (sender, e) => { CommonMethod.Current.MainThread(() => { //调用秀绕的界面 var infoView = new UI.FunctionBaseInfoSetPage(this.device, () => { if (this.btnDeviceName == null || this.btnRoomName == null || this.device == null) { return; } ////刷新显示 this.btnDeviceName.Text = this.device.name; this.btnRoomName.Text = this.device.GetRoomListName(); this.btnCurrDeviceName.Text = this.device.name; this.btnCurrDeviceRoom.Text = this.device.GetRoomListName(); //this.CalculatedPosition();//重新计算宽度 }); infoView.actionDel += () => { //解绑设备后 this.RemoveFromParent(); this.action?.Invoke(); }; MainPage.BasePageView.AddChidren(infoView); infoView.LoadPage(); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; }); }; } /// /// 初始数据 /// private void ReadData() { CommonMethod.Current.Loading.Start(); CommonMethod.Current.SunThread(() => { try { } catch { } finally { Application.RunOnMainThread(() => { CommonMethod.Current.Loading.Hide(); }); } }); } } }