From 3f6685c77beeb12baf840733fb890860f4c26e7c Mon Sep 17 00:00:00 2001 From: mac <user@users-MacBook-Pro.local> Date: 星期四, 25 七月 2024 17:25:59 +0800 Subject: [PATCH] 2024年07月25日17:24:45 --- HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs | 263 ++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 212 insertions(+), 51 deletions(-) diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs index 63c868a..6595c4d 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs @@ -4,6 +4,7 @@ using System.Collections.Generic; using HDL_ON.UI.UI2.FuntionControlView.Aks.Entity; + namespace HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView { /// <summary> @@ -15,6 +16,8 @@ private int leftMargin; private int bottomMargin; private int rightMargin; + private int mWidth; + private int mHeight; /// <summary> /// 涓�琛屽嚑涓厓绱� /// </summary> @@ -23,12 +26,14 @@ /// 鍒楄〃鏈�澶у�� /// </summary> private int mListCount; - - public Action<KeypadEntity> selectAction = null; /// <summary> - /// 褰撳墠閫夋嫨鐨勭储寮�(鍐呴儴浣跨敤) + /// 鎸夐敭鍥炶皟 /// </summary> - private int CurrnetSelectIndex = -1; + public Action<KeypadEntity> selectKeyAction = null; + /// <summary> + /// 褰辩墖鍥炶皟 + /// </summary> + public Action<MovieLibrary> selectImageAction = null; /// <summary> @@ -43,6 +48,8 @@ this.Width = Application.GetRealWidth(width); this.Height = Application.GetRealHeight(height); this.Radius = (uint)Application.GetRealHeight(radius); + this.mWidth = this.Width; + this.mHeight = this.Height; } @@ -68,7 +75,7 @@ /// </summary> public List<KeypadEntity> GetTestList() { - return AksCommonMethod.Current.GetTYYKeypadList(); + return AksCommonMethod.Current.GetTYYKeypadList(null); } /// <summary> @@ -76,8 +83,13 @@ /// </summary> /// <param name="mList">鍒楄〃</param> /// <param name="mRowNumber">涓�琛屽灏戜釜鍏冪礌</param> - public void LoadButtonPage(List<KeypadEntity> mList, 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; @@ -114,17 +126,29 @@ line++; xCount = 0; } + //涓嶆敮鎸佹寜閿偣鍑昏儗鏅鑹� + if (!keypad.isClicked) + { + buttonFram.GetImageButton().Alpha = 0.5f; + buttonFram.GetNameButton().TextColor =unBackgroundColor; + buttonFram.SetClick(false); + + } buttonFram.SetClickListener((fl, btnIcon, btnName) => { - if (buttonFram.Tag != null) + if (buttonFram.Tag == null) { - selectAction?.Invoke((KeypadEntity)buttonFram.Tag); + return; } + selectKeyAction?.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); + // } //} @@ -135,10 +159,14 @@ /// 鍔ㄦ�佸姞杞芥寜閿晫闈� /// </summary> /// <param name="mList">鍒楄〃</param> - /// <param name="list">鍒楄〃涓储寮�,琛ㄧず鏌愪竴鏉″搴﹀姞瀹�</param> - public void LoadButtonPage(List<KeypadEntity> mList, List<int> list) + /// <param name="list"> 鍒楄〃涓储寮�,琛ㄧず鏌愪竴鏉″搴﹀姞瀹�,娌℃湁榛樿(new List<int>)</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; //鑾峰彇鐩稿涓�涓含搴﹀�� @@ -187,18 +215,29 @@ currnetheightValue += ButtonFramLayout.heightFrameLayout; currnetWidthValue = 0; } - + //涓嶆敮鎸佹寜閿偣鍑昏儗鏅鑹� + if (!keypad.isClicked) + { + buttonFram.GetImageButton().Alpha = 0.5f; + buttonFram.GetNameButton().TextColor = unBackgroundColor; + buttonFram.SetClick(false); + } buttonFram.SetClickListener((fl, btnIcon, btnName) => { - if (buttonFram.Tag != null) + if (buttonFram.Tag == null) { - selectAction?.Invoke((KeypadEntity)buttonFram.Tag); + return; } + selectKeyAction?.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); + // } //} } } @@ -206,19 +245,24 @@ /// <summary> ///鍔ㄦ�佸姞杞芥暟瀛楁寜閿晫闈� /// </summary> + /// <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; + int heightMaxValue = 84 - 6; int widthMaxValue = 78; //鑾峰彇鐩稿涓�涓含搴﹀�� 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 <= mList.Count; i++) + for (int i = 0; i < mList.Count; i++) { - var keypad = mList[i - 1]; + var keypad = mList[i]; Button button = new Button { Y = Application.GetRealHeight(this.topMargin) + Application.GetRealHeight(currnetheightValue), @@ -232,7 +276,9 @@ IsBold = true, Tag = keypad, BackgroundColor = MusicColor.WhiteColor, - SelectedBackgroundColor = 0xff454635, + SelectedBackgroundColor = 0xFFF2F3F7, + Radius = (uint)Application.GetRealHeight(8), + SelectedTextColor = MusicColor.TextColor, }; this.AddChidren(button); @@ -242,21 +288,25 @@ currnetheightValue += heightMaxValue; currnetWidthValue = 0; } - button.MouseDownEventHandler += (sen, e) => + //涓嶆敮鎸佹寜閿偣鍑昏儗鏅鑹� + if (!keypad.isClicked) { - if (button.Tag == null || ((KeypadEntity)button.Tag).keypad == "none") + button.TextColor =unBackgroundColor; + + } + + + button.MouseUpEventHandler += (sen, e) => + { + if (button.Tag == null || ((KeypadEntity)button.Tag).keypad == "none"|| !((KeypadEntity)button.Tag).isClicked) { return; } - button.IsSelected = true; - selectAction?.Invoke((KeypadEntity)button.Tag); - }; - button.MouseUpEventHandler += (sen, e) => - { - button.IsSelected = false; + selectKeyAction?.Invoke((KeypadEntity)button.Tag); + SetButtonIsSelected(button); }; - //if (CurrnetSelectIndex != -1 && CurrnetSelectIndex == i) + //if (defaultIndex != -1 && defaultIndex == i) //{ // selectAction?.Invoke((int)buttonFram.Tag); //} @@ -265,9 +315,16 @@ /// <summary> /// 鍔ㄦ�佸姞杞藉浘鐗囩晫闈� + /// 褰辩墖甯冨眬 /// </summary> - public void LoadImagePage(List<KeypadEntity> mList) + /// <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; @@ -275,15 +332,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 <= mList.Count; i++) + for (int i = 0; i < mList.Count; i++) { - var keypad = mList[i - 1]; + var movieLibrary = mList[i]; ImageFramlayout imageFram = new ImageFramlayout(); imageFram.AddView(this); - imageFram.Tag = keypad; + imageFram.Tag = movieLibrary; imageFram.Y = Application.GetRealHeight(this.topMargin) + Application.GetRealHeight(currnetheightValue); imageFram.X = Application.GetRealWidth(currnetWidthValue); - imageFram.btnName.Text = keypad.name; + imageFram.btnName.Text = movieLibrary.name; + imageFram.btnImage.ImageBytes = movieLibrary.imageBytes; + imageFram.btnScore.Text = movieLibrary.rating; currnetWidthValue += (widthMaxValue + 8);//8鏄殧闂村�� if (widthDimensionValue < Application.GetRealWidth(currnetWidthValue)) { @@ -293,24 +352,29 @@ imageFram.SetClickListener((fl) => { - if (imageFram.Tag != null) + if (imageFram.Tag != null&& imageFram.Tag is MovieLibrary) { - selectAction?.Invoke((KeypadEntity)imageFram.Tag); + selectImageAction?.Invoke((MovieLibrary)imageFram.Tag); } }); //if (CurrnetSelectIndex != -1 && CurrnetSelectIndex == i) //{ - // selectAction?.Invoke((int)imageFram.Tag); + // selectImageAction?.Invoke((int)imageFram.Tag); //} } } /// <summary> /// 鍔ㄦ�佸姞杞藉浘鐗囩晫闈� + /// 褰辩墖甯冨眬 /// </summary> /// <param name="mRowNumber">涓�琛屽灏戜釜鍏冪礌</param> - public void LoadImagePage(List<KeypadEntity> mList, int mRowNumber) + /// <param name="defaultIndex">榛樿鍊肩储寮曡寖鍥碵0,mList.count-1],鍊艰秴鍑鸿寖鍥磋涓烘棤鏁�</param> + public void LoadImagePage(List<MovieLibrary> mList, int mRowNumber) { - + if (mList == null || mList.Count == 0) + { + return; + } if (mRowNumber == 0) { return; @@ -338,30 +402,127 @@ } imageFram.SetClickListener((fl) => { - if (imageFram.Tag != null) + if (imageFram.Tag != null && imageFram.Tag is MovieLibrary) { - selectAction?.Invoke((KeypadEntity)imageFram.Tag); + selectImageAction?.Invoke((MovieLibrary)imageFram.Tag); } }); //if (CurrnetSelectIndex != -1 && CurrnetSelectIndex == i) //{ - // selectAction?.Invoke((int)imageFram.Tag); + // selectImageAction?.Invoke((MovieLibrary)imageFram.Tag); //} } } - /// <summary> - /// 璁剧疆鍒濆閫夋嫨(璇峰湪鍒濆鍖栧畬鎴愪箣鍓嶈皟鐢�) + + private int currnetheightValue1 = 0; + private int currnetWidthValue1 = 0; + private int heightMaxValue1 = ImageFramlayout.heightFrameLayout; + private int widthMaxValue1 = ImageFramlayout.widthFrameLayout; + //鑾峰彇鐩稿涓�涓含搴﹀�� + private int widthDimensionValue1 = Application.GetRealWidth(343) - Application.GetRealHeight(ImageFramlayout.widthFrameLayout / 2); + /// <summary> + /// 鍔犺浇褰辩墖鍒楄〃甯冨眬 + /// (鐗规畩甯冨眬) /// </summary> - /// <param name="index">浠庡垪琛�0寮�濮嬭绠楃涓�涓厓绱�,璁剧疆瓒呰繃鍒楄〃鏈�澶�(new List().count-1)鍊艰涓烘棤鏁�</param> - public void SetIndex(int index = -1) + /// <param name="mList">鍒楄〃</param> + public void LoadImagePage(List<ImageFramlayout> imageFramlayoutList) { - if (index == -1) { return; } - this.CurrnetSelectIndex = index; + + if (imageFramlayoutList==null||imageFramlayoutList.Count == 0) + { + return; + } + //int currnetheightValue = 0; + //int currnetWidthValue = 0; + //int heightMaxValue = ImageFramlayout.heightFrameLayout; + //int widthMaxValue = ImageFramlayout.widthFrameLayout; + ////鑾峰彇鐩稿涓�涓含搴﹀�� + //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 = 0; i < imageFramlayoutList.Count; i++) + { + var imageFram = imageFramlayoutList[i]; + if (imageFram == null) + { + continue; + } + imageFram.AddView(this); + imageFram.Y =Application.GetRealHeight(this.topMargin) + Application.GetRealHeight(currnetheightValue1); + imageFram.X = Application.GetRealWidth(currnetWidthValue1); + currnetWidthValue1 += (widthMaxValue1 + 8);//8鏄殧闂村�� + if (widthDimensionValue1 < Application.GetRealWidth(currnetWidthValue1)) + { + currnetheightValue1 += (heightMaxValue1 + 20);//20鏄殧闂村�� + currnetWidthValue1 = 0; + } + + imageFram.SetClickListener((fl) => + { + if (imageFram.Tag != null && imageFram.Tag is MovieLibrary) + { + selectImageAction?.Invoke((MovieLibrary)imageFram.Tag); + } + }); + } + } + /// <summary> + /// 姘村钩婊戝姩甯冨眬 + /// </summary> + /// <param name="mList">鍒楄〃</param> + /// <param name="defaultIndex">榛樿鍊肩储寮曡寖鍥碵0,mList.count-1],鍊艰秴鍑鸿寖鍥磋涓烘棤鏁�</param> + public void LoadHorizontalPage(List<FilterCategoryEntity> mList, int defaultIndex = -1) + { + 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; + selectKeyAction?.Invoke(keypad); + }; + horizontal.InitControl(filterCategory.filters, defaultIndex); + + + } } + /// <summary> /// 鏈�鍚庝竴琛� /// </summary> -- Gitblit v1.8.0