From ff423b88a0dc521932305b5bd44b1786d3e42722 Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期四, 10 八月 2023 18:48:02 +0800 Subject: [PATCH] 2023年08月10日18:47:45 --- HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs | 248 +++++++++++++++++++++++++++++-------------------- 1 files changed, 145 insertions(+), 103 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs index 443c3e0..25a64f5 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs @@ -2,6 +2,7 @@ using HDL_ON.UI.Music; using Shared; using System.Collections.Generic; +using HDL_ON.UI.UI2.FuntionControlView.Aks.Entity; namespace HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView { @@ -18,14 +19,12 @@ /// 涓�琛屽嚑涓厓绱� /// </summary> private int mRowNumber; - - private List<string> mList; - - public Action<string> selectAction = null; /// <summary> - /// 褰撳墠閫夋嫨鐨勭储寮�(鍐呴儴浣跨敤) + /// 鍒楄〃鏈�澶у�� /// </summary> - private int CurrnetSelectIndex = -1; + private int mListCount; + + public Action<KeypadEntity> selectAction = null; /// <summary> @@ -58,58 +57,42 @@ this.rightMargin = right; } - /// <summary> - /// 璁剧疆鍒楄〃鏁版嵁(璇峰湪鍒濆鍖栧畬鎴愪箣鍓嶈皟鐢�) - /// </summary> - /// <param name="list"></param> - public void SetList(List<string> list) - { - if (list == null) - { - list = new List<string>(); - } - this.mList = list; - } + /// <summary> /// 鑾峰彇娴嬭瘯鍒楄〃鏁版嵁 /// </summary> - public List<string> GetTestList(int count) + public List<KeypadEntity> GetTestList() { - var list = new List<string>(); - for (int i = 1; i <= count; i++) - { - if (i % 2 == 0) - { - list.Add("浣犲ソ鍌诲摝!"); - } - else - { - list.Add("鐪熺殑鏄繖鏍风殑鍚�?"); - } - } - return list; + return AksCommonMethod.Current.GetTYYKeypadList(); } /// <summary> /// 鍔ㄦ�佸姞杞芥寜閿晫闈� /// </summary> + /// <param name="mList">鍒楄〃</param> /// <param name="mRowNumber">涓�琛屽灏戜釜鍏冪礌</param> - public void LoadButtonPage(int mRowNumber) + /// <param name="defaultIndex">榛樿鍊肩储寮曡寖鍥碵0,mList.count-1],澶т簬鑼冨洿,璇ュ�艰涓烘棤鏁�</param> + public void LoadButtonPage(List<KeypadEntity> mList, int mRowNumber, int defaultIndex = -1) { + if (mList == null || mList.Count == 0) + { + return; + } if (mRowNumber == 0) { return; } this.mRowNumber = mRowNumber; + this.mListCount = mList.Count; int line = 0; int xCount = 0; - for (int i = 1; i <= this.mList.Count; i++) + for (int i = 1; i <= mList.Count; i++) { - var d = this.mList[i - 1]; + var keypad = mList[i - 1]; ButtonFramLayout buttonFram = new ButtonFramLayout(); this.AddChidren(buttonFram); - buttonFram.Tag = d; + buttonFram.Tag = keypad; buttonFram.Y = Application.GetRealHeight(this.topMargin) + Application.GetRealHeight(ButtonFramLayout.heightFrameLayout * line); buttonFram.X = Application.GetRealWidth(this.leftMargin) + Application.GetRealWidth(ButtonFramLayout.widthFrameLayout * xCount); buttonFram.AddImageView(); @@ -122,7 +105,8 @@ { buttonFram.AddBottomLine(); } - buttonFram.GetNameButton().Text = d; + buttonFram.GetImageButton().UnSelectedImagePath = keypad.localIconAddress; + buttonFram.GetNameButton().Text = keypad.name; xCount++; if (i % this.mRowNumber == 0) @@ -133,15 +117,18 @@ } buttonFram.SetClickListener((fl, btnIcon, btnName) => { - if (buttonFram.Tag != null) + if (buttonFram.Tag != null&& buttonFram.Tag is KeypadEntity) { - selectAction?.Invoke(buttonFram.Tag.ToString()); + selectAction?.Invoke((KeypadEntity)buttonFram.Tag); } }); - //if (CurrnetSelectIndex != -1 && CurrnetSelectIndex == i) + //if (defaultIndex != -1 && defaultIndex == i) //{ - // selectAction?.Invoke((int)buttonFram.Tag); + // if (buttonFram.Tag != null && buttonFram.Tag is KeypadEntity) + // { + // selectAction?.Invoke((KeypadEntity)buttonFram.Tag); + // } //} @@ -151,18 +138,23 @@ /// <summary> /// 鍔ㄦ�佸姞杞芥寜閿晫闈� /// </summary> - /// <param name="list">绱㈠紩鍒楄〃,琛ㄧず鏌愪竴鏉″搴﹀姞瀹�</param> - public void LoadButtonPage(List<int> list) + /// <param name="mList">鍒楄〃</param> + /// <param name="list">鍒楄〃涓储寮�,琛ㄧず鏌愪竴鏉″搴﹀姞瀹�</param> + /// <param name="defaultIndex">榛樿鍊肩储寮曡寖鍥碵0,mList.count-1],澶т簬鑼冨洿,璇ュ�艰涓烘棤鏁�</param> + public void LoadButtonPage(List<KeypadEntity> mList, List<int> list,int defaultIndex=-1) { - + if (mList == null || mList.Count == 0) + { + return; + } int currnetheightValue = 0; int currnetWidthValue = 0; //鑾峰彇鐩稿涓�涓含搴﹀�� int heightDimensionValue = this.Height - Application.GetRealHeight(this.topMargin) - Application.GetRealHeight(this.bottomMargin) - Application.GetRealHeight(ButtonFramLayout.heightFrameLayout / 2); int widthDimensionValue = this.Width - Application.GetRealWidth(this.leftMargin) - Application.GetRealWidth(this.rightMargin) - Application.GetRealHeight(ButtonFramLayout.widthFrameLayout / 2); - for (int i = 1; i <= this.mList.Count; i++) + for (int i = 1; i <= mList.Count; i++) { - var d = this.mList[i - 1]; + var keypad = mList[i - 1]; ButtonFramLayout buttonFram = null; if (list.Contains(i)) { @@ -183,8 +175,9 @@ this.AddChidren(buttonFram); buttonFram.AddImageView(); buttonFram.AddNameView(); - buttonFram.Tag = d;//鏍囪鏁版嵁 - buttonFram.GetNameButton().Text = d.ToString(); + buttonFram.Tag = keypad;//鏍囪鏁版嵁 + buttonFram.GetImageButton().UnSelectedImagePath = keypad.localIconAddress; + buttonFram.GetNameButton().Text = keypad.name; if (widthDimensionValue > Application.GetRealWidth(currnetWidthValue)) { //鍔犲彸绾� @@ -205,15 +198,18 @@ buttonFram.SetClickListener((fl, btnIcon, btnName) => { - if (buttonFram.Tag != null) + if (buttonFram.Tag != null&& buttonFram.Tag is KeypadEntity) { - selectAction?.Invoke(buttonFram.Tag.ToString()); + selectAction?.Invoke((KeypadEntity)buttonFram.Tag); } }); - //if (CurrnetSelectIndex != -1 && CurrnetSelectIndex == i) + //if (defaultIndex != -1 && defaultIndex == i) //{ - // selectAction?.Invoke((int)buttonFram.Tag); + // if (buttonFram.Tag != null && buttonFram.Tag is KeypadEntity) + // { + // selectAction?.Invoke((KeypadEntity)buttonFram.Tag); + // } //} } } @@ -221,8 +217,14 @@ /// <summary> ///鍔ㄦ�佸姞杞芥暟瀛楁寜閿晫闈� /// </summary> - public void LoadNumberButtonPage() + /// <param name="mList">鍒楄〃</param> + /// <param name="defaultIndex">榛樿鍊肩储寮曡寖鍥碵0,mList.count-1],澶т簬鑼冨洿,璇ュ�艰涓烘棤鏁�</param> + public void LoadNumberButtonPage(List<KeypadEntity> mList) { + if (mList == null || mList.Count == 0) + { + return; + } int currnetheightValue = 0; int currnetWidthValue = 0; int heightMaxValue = 84; @@ -230,21 +232,21 @@ //鑾峰彇鐩稿涓�涓含搴﹀�� int heightDimensionValue = this.Height - Application.GetRealHeight(this.topMargin) - Application.GetRealHeight(this.bottomMargin) - Application.GetRealHeight(heightMaxValue / 2); int widthDimensionValue = this.Width - Application.GetRealWidth(this.leftMargin) - Application.GetRealWidth(this.rightMargin) - Application.GetRealHeight(widthMaxValue / 2); - for (int i = 1; i <= this.GetNumberTextList().Count; i++) + for (int i = 0; i <mList.Count; i++) { - var d = this.GetNumberTextList()[i - 1]; + var keypad = mList[i]; Button button = new Button { Y = Application.GetRealHeight(this.topMargin) + Application.GetRealHeight(currnetheightValue), X = Application.GetRealWidth(this.leftMargin) + Application.GetRealWidth(currnetWidthValue), Width = Application.GetRealWidth(widthMaxValue), Height = Application.GetRealHeight(heightMaxValue), - Text = d, + Text = keypad.name, TextSize = TextSize.Text20, TextColor = MusicColor.TextColor, TextAlignment = TextAlignment.Center, IsBold = true, - Tag = d, + Tag = keypad, BackgroundColor = MusicColor.WhiteColor, SelectedBackgroundColor = 0xff454635, }; @@ -258,19 +260,19 @@ } button.MouseDownEventHandler += (sen, e) => { - if (button.Tag == null || string.IsNullOrEmpty(button.Tag.ToString())) + if (button.Tag == null || ((KeypadEntity)button.Tag).keypad == "none") { return; } button.IsSelected = true; - selectAction?.Invoke(button.Tag.ToString()); + selectAction?.Invoke((KeypadEntity)button.Tag); }; button.MouseUpEventHandler += (sen, e) => { button.IsSelected = false; }; - //if (CurrnetSelectIndex != -1 && CurrnetSelectIndex == i) + //if (defaultIndex != -1 && defaultIndex == i) //{ // selectAction?.Invoke((int)buttonFram.Tag); //} @@ -279,9 +281,16 @@ /// <summary> /// 鍔ㄦ�佸姞杞藉浘鐗囩晫闈� + /// 褰辩墖甯冨眬 /// </summary> - public void LoadImagePage() + /// <param name="mList">鍒楄〃</param> + /// <param name="defaultIndex">榛樿鍊肩储寮曡寖鍥碵0,mList.count-1],澶т簬鑼冨洿,璇ュ�艰涓烘棤鏁�</param> + public void LoadImagePage(List<MovieLibrary> mList) { + if (mList == null || mList.Count == 0) + { + return; + } int currnetheightValue = 0; int currnetWidthValue = 0; int heightMaxValue = ImageFramlayout.heightFrameLayout; @@ -289,15 +298,17 @@ //鑾峰彇鐩稿涓�涓含搴﹀�� int heightDimensionValue = this.Height - Application.GetRealHeight(this.topMargin) - Application.GetRealHeight(this.bottomMargin) - Application.GetRealHeight(heightMaxValue / 2); int widthDimensionValue = this.Width - Application.GetRealWidth(this.leftMargin) - Application.GetRealWidth(this.rightMargin) - Application.GetRealHeight(widthMaxValue / 2); - for (int i = 1; i <= this.mList.Count; i++) + for (int i = 0; i < mList.Count; i++) { - var d = this.mList[i - 1]; + var movieLibrary = mList[i]; ImageFramlayout imageFram = new ImageFramlayout(); imageFram.AddView(this); - imageFram.Tag = d; + imageFram.Tag = movieLibrary; imageFram.Y = Application.GetRealHeight(this.topMargin) + Application.GetRealHeight(currnetheightValue); imageFram.X = Application.GetRealWidth(currnetWidthValue); - imageFram.btnName.Text = d; + imageFram.btnName.Text = movieLibrary.name; + imageFram.btnImage.ImageBytes = movieLibrary.imageBytes; + imageFram.btnScore.Text = movieLibrary.rating; currnetWidthValue += (widthMaxValue + 8);//8鏄殧闂村�� if (widthDimensionValue < Application.GetRealWidth(currnetWidthValue)) { @@ -307,9 +318,9 @@ imageFram.SetClickListener((fl) => { - if (imageFram.Tag != null) + if (imageFram.Tag != null&& imageFram.Tag is KeypadEntity) { - selectAction?.Invoke(imageFram.Tag.ToString()); + selectAction?.Invoke((KeypadEntity)imageFram.Tag); } }); //if (CurrnetSelectIndex != -1 && CurrnetSelectIndex == i) @@ -320,26 +331,33 @@ } /// <summary> /// 鍔ㄦ�佸姞杞藉浘鐗囩晫闈� + /// 褰辩墖甯冨眬 /// </summary> /// <param name="mRowNumber">涓�琛屽灏戜釜鍏冪礌</param> - public void LoadImagePage(int mRowNumber) + /// <param name="defaultIndex">榛樿鍊肩储寮曡寖鍥碵0,mList.count-1],澶т簬鑼冨洿,璇ュ�艰涓烘棤鏁�</param> + public void LoadImagePage(List<KeypadEntity> mList, int mRowNumber) { + if (mList == null || mList.Count == 0) + { + return; + } if (mRowNumber == 0) { return; } + this.mListCount = mList.Count; this.mRowNumber = mRowNumber; int line = 0; int xCount = 0; - for (int i = 1; i <= this.mList.Count; i++) + for (int i = 1; i <= mList.Count; i++) { - var d = this.mList[i - 1]; + var keypad = mList[i - 1]; ImageFramlayout imageFram = new ImageFramlayout(); imageFram.AddView(this); - imageFram.Tag = d; + imageFram.Tag = keypad; imageFram.Y = Application.GetRealHeight(this.topMargin) + Application.GetRealHeight((ImageFramlayout.heightFrameLayout + 20) * line); imageFram.X = Application.GetRealWidth((ImageFramlayout.widthFrameLayout + 8) * xCount); - imageFram.btnName.Text = d; + imageFram.btnName.Text = keypad.name; xCount++; if (i % this.mRowNumber == 0) @@ -352,7 +370,7 @@ { if (imageFram.Tag != null) { - selectAction?.Invoke(imageFram.Tag.ToString()); + selectAction?.Invoke((KeypadEntity)imageFram.Tag); } }); @@ -364,16 +382,61 @@ } } - /// <summary> - /// 璁剧疆鍒濆閫夋嫨(璇峰湪鍒濆鍖栧畬鎴愪箣鍓嶈皟鐢�) + /// <summary> + /// 姘村钩婊戝姩甯冨眬 /// </summary> - /// <param name="index">浠庡垪琛�0寮�濮嬭绠楃涓�涓厓绱�,璁剧疆瓒呰繃鍒楄〃鏈�澶�(new List().count-1)鍊艰涓烘棤鏁�</param> - public void SetIndex(int index = -1) + /// <param name="mList">鍒楄〃</param> + /// <param name="defaultIndex">榛樿鍊肩储寮曡寖鍥碵0,mList.count-1],澶т簬鑼冨洿,璇ュ�艰涓烘棤鏁�</param> + public void LoadHorizontalPage(List<FilterCategoryEntity> mList, int defaultIndex = -1) { - if (index == -1) { return; } - this.CurrnetSelectIndex = index; + if (mList == null || mList.Count == 0) + { + return; + } + for (int i = 0; i < mList.Count; i++) + { + var filterCategory = mList[i]; + BaseFramLayout horizontalFL = new BaseFramLayout + { + Y = Application.GetRealHeight(i * 75), + Height = Application.GetRealHeight(75), + Width = this.Width, + }; + this.AddChidren(horizontalFL); + Button btnTitleType = new Button + { + X = Application.GetRealWidth(16), + Y = Application.GetRealHeight(16), + Height = Application.GetRealHeight(22), + Width = Application.GetRealWidth(200), + Text = filterCategory.name, + TextSize = TextSize.Text16, + TextColor = MusicColor.TextColor, + TextAlignment = TextAlignment.CenterLeft, + IsBold = true, + Tag = filterCategory, + }; + horizontalFL.AddChidren(btnTitleType); + + HorizontalFramLayout horizontal = new HorizontalFramLayout(375 - 16, 28); + horizontalFL.AddChidren(horizontal); + horizontal.Y = btnTitleType.Bottom + Application.GetRealHeight(8); + horizontal.X = Application.GetRealWidth(16); + horizontal.SelectTypeEvent += (filters) => + { + KeypadEntity keypad = new KeypadEntity(); + keypad.category = filters.category; + keypad.filterValue = filters.filterValue; + keypad.filterName = filters.filterName; + selectAction?.Invoke(keypad); + }; + horizontal.InitControl(filterCategory.filters, defaultIndex); + + + } } + /// <summary> /// 鏈�鍚庝竴琛� /// </summary> @@ -381,12 +444,12 @@ /// <returns></returns> private bool IsLastColumn(int index) { - if (this.mRowNumber == 0 || this.mList == null || this.mList.Count == 0) + if (this.mRowNumber == 0 || mListCount == 0) { return false; } - int lineCount = this.mList.Count / this.mRowNumber;//寰楀嚭琛屾暟 - int number = this.mList.Count % this.mRowNumber; + int lineCount = mListCount / this.mRowNumber;//寰楀嚭琛屾暟 + int number = mListCount % this.mRowNumber; if (number != 0) { if (index > lineCount * this.mRowNumber) @@ -462,27 +525,6 @@ - public List<string> GetNumberTextList() - { - return new List<string> - { - "1", - "2", - "3", - Language.StringByID(StringId.pindaojia), - "4", - "5", - "6", - Language.StringByID(StringId.pindaojian), - "7", - "8", - "9", - "-/--", - "",//杩欎釜鏄负浜嗗崰浣嶇疆 - "0" - }; - - } } } -- Gitblit v1.8.0