using System;
|
using System.Collections.Generic;
|
using HDL_ON.UI.Music;
|
using HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView;
|
using HDL_ON.UI.UI2.FuntionControlView.Aks.Entity;
|
using HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock;
|
using Shared;
|
using static HDL_ON.UI.UI2.FuntionControlView.Aks.AksPage;
|
namespace HDL_ON.UI.UI2.FuntionControlView.Aks
|
{
|
/// <summary>
|
/// 功放界面
|
/// </summary>
|
public class GfPage : BaseFramLayout
|
{
|
/// <summary>
|
///
|
/// </summary>
|
/// <param name="remoteControlEntity">遥控器对象</param>
|
/// <param name="sequencerList">时序器列表</param>
|
public GfPage(RemoteControlEntity remoteControlEntity, List<SequencerEntity> sequencerList)
|
{
|
this.remoteControl = remoteControlEntity;
|
this.sequencerList = sequencerList;
|
}
|
/// <summary>
|
/// 时序器列表
|
/// </summary>
|
private List<SequencerEntity> sequencerList;
|
/// <summary>
|
/// 当前的遥控器对象
|
/// </summary>
|
private RemoteControlEntity remoteControl;
|
public Action<IntType> action;
|
CornerFramLayout cornerFram;
|
TypeMultiFramLayout typeMultiFramLayout;
|
|
public void Show()
|
{
|
//初始化UI
|
this.InitUI();
|
//初始化事件监听器
|
this.EventListener();
|
//读取数据
|
this.ReadData();
|
|
}
|
|
private void ReadData()
|
{
|
|
}
|
|
private void EventListener()
|
{
|
cornerFram.selectKeyAction += (keypadEntity) =>
|
{
|
this.KeyControl(keypadEntity.keypad, keypadEntity.name);
|
};
|
//时序器
|
typeMultiFramLayout.SetLeftFlClickListener((f) =>
|
{
|
SxqPage sxqPage = new SxqPage(this.sequencerList, this.remoteControl.deviceId);
|
MainPage.BasePageView.AddChidren(sxqPage);
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
sxqPage.Show();
|
|
});
|
//设备切换
|
typeMultiFramLayout.SetRightFlClickListener((f) =>
|
{
|
action?.Invoke(IntType.HiFi);
|
});
|
|
}
|
|
private void InitUI()
|
{
|
this.BackgroundColor = MusicColor.ViewColor;
|
Button btnTitle = new Button
|
{
|
Y = Application.GetRealHeight(16),
|
X = Application.GetRealWidth(16),
|
Height = Application.GetRealHeight(22),
|
Width = Application.GetRealWidth(200),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = MusicColor.TextColor,
|
TextSize = TextSize.Text16,
|
TextID = StringId.gongfan,
|
IsBold = true,
|
};
|
this.AddChidren(btnTitle);
|
|
|
|
cornerFram = new CornerFramLayout(343, 284, 17);
|
cornerFram.X = Application.GetRealWidth(16);
|
cornerFram.Y = btnTitle.Bottom + Application.GetRealHeight(16);
|
this.AddChidren(cornerFram);
|
cornerFram.SetMargin(16, 0, 16, 0);
|
cornerFram.LoadButtonPage(AksCommonMethod.Current.GetGFKeypadList(),4);
|
|
|
CornerFramLayout cornerBottomFram = new CornerFramLayout(343, 72, 17);
|
cornerBottomFram.X = Application.GetRealWidth(16);
|
cornerBottomFram.Y = cornerFram.Bottom + Application.GetRealHeight(16);
|
cornerBottomFram.BackgroundColor = MusicColor.WhiteColor;
|
cornerBottomFram.Radius = (uint)Application.GetRealHeight(17);
|
this.AddChidren(cornerBottomFram);
|
|
typeMultiFramLayout = new TypeMultiFramLayout();
|
typeMultiFramLayout.multiFramLayout.Gravity = Gravity.Center;
|
typeMultiFramLayout.AddView(cornerBottomFram);
|
typeMultiFramLayout.btnBottonRightName.TextID = StringId.gongfan;
|
|
this.AdjustRealHeight(16);
|
}
|
|
/// <summary>
|
/// 按键控制
|
/// </summary>
|
/// <param name="keypad"><按键标识/param>
|
/// <param name="keyName"><按键名称(打印用的)/param>
|
private void KeyControl(string keypad, string keyName)
|
{
|
//CommonMethod.Current.Loading.Start();
|
CommonMethod.Current.SunThread(() =>
|
{
|
try
|
{
|
SendMethod.Current.KeypadExecute(remoteControl.deviceId, remoteControl.rcId, keypad, keyName);
|
}
|
catch { }
|
finally
|
{
|
CommonMethod.Current.MainThread(() =>
|
{
|
//CommonMethod.Current.Loading.Hide();
|
});
|
}
|
});
|
|
}
|
}
|
}
|