using HDL_ON.UI.Music; using System; using Shared; namespace HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView { public class TypeSingleFramLayout { private uint UpBackgroundColor = MusicColor.ViewColor; private uint DownBackgroundColor = 0xFFEFEFEF; /// /// 单个类型容器 /// public FrameLayout singleFramLayout = new FrameLayout { BackgroundColor = MusicColor.ViewColor, Gravity = Gravity.CenterHorizontal, Width = Application.GetRealWidth(101), Height = Application.GetRealHeight(40), Radius = (uint)Application.GetRealHeight(20), }; public Button btnLeftImage = new Button { X = Application.GetRealWidth(16), Width = Application.GetRealWidth(16), Height = Application.GetRealWidth(16), UnSelectedImagePath = "AksIcon/yingku.png", Gravity = Gravity.CenterVertical, Name = "btnLeftImage", }; public Button btnName = new Button { Width = Application.GetRealWidth(32), Height = Application.GetRealHeight(23), TextID = StringId.yingku, TextSize = TextSize.Text16, TextColor = MusicColor.TextColor, TextAlignment = TextAlignment.Center, Gravity = Gravity.CenterVertical, IsMoreLines = true, Name = "btnName", }; public Button btnRightImage = new Button { Width = Application.GetRealWidth(5), Height = Application.GetRealWidth(8), UnSelectedImagePath = "AksIcon/yingkunext.png", Gravity = Gravity.CenterVertical, Name = "btnRightImage", }; public void AddView(FrameLayout layout) { layout.AddChidren(singleFramLayout); singleFramLayout.AddChidren(btnLeftImage); singleFramLayout.AddChidren(btnName); singleFramLayout.AddChidren(btnRightImage); btnName.X = btnLeftImage.Right + Application.GetRealWidth(4); btnRightImage.X = btnName.Right + Application.GetRealWidth(8); } public void SetClickUpBackgroundColor(uint backgroundColor) { this.UpBackgroundColor = backgroundColor; } public void SetClickDownBackgroundColor(uint backgroundColor) { this.DownBackgroundColor = backgroundColor; } /// /// 事件监听方法 /// /// 回调(第一个是父类对象; public void SetClickListener(Action action) { EventHandler UpClick = (sender, e) => { //singleFramLayout.BackgroundColor = this.UpBackgroundColor; //弹起来还原背景颜色 }; singleFramLayout.MouseUpEventHandler += UpClick; btnLeftImage.MouseUpEventHandler += UpClick; btnName.MouseUpEventHandler += UpClick; btnRightImage.MouseUpEventHandler += UpClick; EventHandler DownClick = (sender, e) => { //按下去改变背景颜色 //singleFramLayout.BackgroundColor = this.DownBackgroundColor; action?.Invoke(singleFramLayout); }; singleFramLayout.MouseDownEventHandler += DownClick; btnLeftImage.MouseDownEventHandler += DownClick; btnName.MouseDownEventHandler += DownClick; btnRightImage.MouseDownEventHandler += DownClick; } } }