From 72c7bdb62b203eeb6a590e96bf25a4e186bd45cd Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期四, 03 八月 2023 20:21:55 +0800 Subject: [PATCH] 2023年08月03日20:21:49 --- HDL_ON/UI/UI2/FuntionControlView/Aks/YkPage.cs | 39 + HDL_ON/UI/UI2/FuntionControlView/Aks/TYYPage.cs | 129 ++++++++ HDL_ON/UI/UI2/FuntionControlView/Aks/AksMusicPage.cs | 5 HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ImageFramlayout.cs | 4 HDL_ON/HDL_ON.projitems | 3 HDL_ON/UI/UI2/FuntionControlView/Aks/DetailPage.cs | 375 +++++++++++++++++++++++ HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/HorizontalFramLayout.cs | 10 HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs | 173 +++++++++- HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ButtonFramLayout.cs | 7 HDL_ON/UI/UI2/FuntionControlView/Music/View/SizeClass.cs | 2 HDL_ON/UI/UI2/FuntionControlView/Aks/CollectPage.cs | 9 HDL_ON/UI/UI2/FuntionControlView/Aks/GFPage.cs | 102 ++++++ HDL_ON/UI/UI2/FuntionControlView/Aks/AksPage.cs | 63 ++- 13 files changed, 848 insertions(+), 73 deletions(-) diff --git a/HDL_ON/HDL_ON.projitems b/HDL_ON/HDL_ON.projitems index 8ce1461..0dd05ae 100644 --- a/HDL_ON/HDL_ON.projitems +++ b/HDL_ON/HDL_ON.projitems @@ -578,6 +578,9 @@ <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Aks\YkPage.cs" /> <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Aks\CommonView\ImageFramlayout.cs" /> <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Aks\CollectPage.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Aks\DetailPage.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Aks\GFPage.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\FuntionControlView\Aks\TYYPage.cs" /> </ItemGroup> <ItemGroup> <Folder Include="$(MSBuildThisFileDirectory)Entity\Device\" /> diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/AksMusicPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/AksMusicPage.cs index c8f33a1..7f8b85a 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/AksMusicPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/AksMusicPage.cs @@ -112,7 +112,7 @@ cornerFram.X = Application.GetRealWidth(16); cornerFram.Y = btnTitle.Bottom + Application.GetRealHeight(16); this.AddChidren(cornerFram); - cornerFram.SetList(cornerFram.GetTestList(17)); + cornerFram.SetList(cornerFram.GetTestList(16)); cornerFram.SetMargin(16, 0, 16, 0); cornerFram.LoadButtonPage(); @@ -135,8 +135,9 @@ typeMultiFramLayout = new TypeMultiFramLayout(); typeMultiFramLayout.multiFramLayout.Y = menuFram.Bottom + Application.GetRealHeight(32); typeMultiFramLayout.AddView(cornerBottomFram); + typeMultiFramLayout.btnBottonRightName.TextID = StringId.bofangqi; - this.AdjustRealHeight(20); + this.AdjustRealHeight(16); } diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/AksPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/AksPage.cs index 12570d9..0c93e11 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/AksPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/AksPage.cs @@ -48,7 +48,9 @@ /// 鍒犻櫎璁惧鍚庨渶瑕佹洿鏂扮晫闈㈢殑鍥炶皟 /// </summary> public Action action; - + /// <summary> + /// 璁板綍褰撳墠璁惧 + /// </summary> public IntType currnetIntType= IntType.none; public VerticalScrolViewLayout vv; @@ -179,13 +181,7 @@ }); } /// <summary> - /// 鍒囨崲鐣岄潰 - ///1 = 鎾斁鍣� - ///2 = 鍔熸斁 - ///3 = 鐢佃 - ///4 = 鏈洪《鐩� - ///5 = 鎶曞奖浠� - ///6 = 涓囪兘閬ユ帶鍣� + /// 鍒囨崲鐣岄潰(1 = 鎾斁鍣�,2 = 鍔熸斁,3 = 鐢佃,4 = 鏈洪《鐩�,5 = 鎶曞奖浠�,6 = 涓囪兘閬ユ帶鍣�) /// </summary> private void SwitchUI(IntType type) { @@ -215,37 +211,46 @@ }; } break; - case IntType.HiFi: { } break; + case IntType.HiFi: { + GFPage gFPage = new GFPage(); + this.vv.AddChidren(gFPage); + gFPage.Show(); + gFPage.action += (type) => + { + SelectedType(); + }; + + } break; case IntType.TV: { } break; case IntType.STB: { } break; - case IntType.Projector: { } break; + case IntType.Projector: { + TYYPage tYYPage = new TYYPage(); + this.vv.AddChidren(tYYPage); + tYYPage.Show(); + tYYPage.action += (type) => + { + SelectedType(); + }; + } break; case IntType.Control: { } break; } } /// <summary> - /// 閫変腑绫诲瀷 - ///1 = 鎾斁鍣� - ///2 = 鍔熸斁 - ///3 = 鐢佃 - ///4 = 鏈洪《鐩� - ///5 = 鎶曞奖浠� - ///6 = 涓囪兘閬ユ帶鍣� + /// 閫変腑绫诲瀷寮规(1 = 鎾斁鍣�,2 = 鍔熸斁,3 = 鐢佃,4 = 鏈洪《鐩�,5 = 鎶曞奖浠�,6 = 涓囪兘閬ユ帶鍣�) /// </summary> - /// <param name="button">鏄剧ず鏂囨湰</param> private void SelectedType() { var deviceTypeList = GetTypeDictionary().Values.ToList(); ///涔嬪墠鐨勭姸鎬佹枃鏈� - string currCondition = Language.StringByID(StringId.bofangqi); + string ccurrnetDeviceStr= this.GetValueString(this.currnetIntType); PublicInterface conditionView = new PublicInterface(); - conditionView.SingleSelectionShow(this, deviceTypeList, "璁惧閫夋嫨", currCondition - , (stateValue) => + conditionView.SingleSelectionShow(this, deviceTypeList, "璁惧閫夋嫨", ccurrnetDeviceStr + , (valueStr) => { //鐣岄潰鏄剧ず閫変腑鍊� - //button.Text = stateValue; - var intType = this.GetKeyIntType(stateValue); + var intType = this.GetKeyIntType(valueStr); this.SwitchUI(intType); }); @@ -284,7 +289,7 @@ } /// <summary> - /// + /// 鍒濆鍖栧瓧鍏� /// </summary> /// <returns></returns> private Dictionary<IntType, string> GetTypeDictionary() @@ -298,6 +303,11 @@ dic.Add(IntType.Control, Language.StringByID(StringId.xuniyaokongqi)); return dic; } + /// <summary> + /// 鑾峰彇璁惧 + /// </summary> + /// <param name="value">(1 = 鎾斁鍣�,2 = 鍔熸斁,3 = 鐢佃,4 = 鏈洪《鐩�,5 = 鎶曞奖浠�,6 = 涓囪兘閬ユ帶鍣�)</param> + /// <returns></returns> private IntType GetKeyIntType(string value) { var dic = this.GetTypeDictionary(); @@ -310,6 +320,11 @@ } return IntType.none; } + /// <summary> + /// 鑾峰彇璁惧鍚嶇О + /// </summary> + /// <param name="key">(1 = 鎾斁鍣�,2 = 鍔熸斁,3 = 鐢佃,4 = 鏈洪《鐩�,5 = 鎶曞奖浠�,6 = 涓囪兘閬ユ帶鍣�)</param> + /// <returns></returns> private string GetValueString(IntType key) { var dic = this.GetTypeDictionary(); diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/CollectPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/CollectPage.cs index 4e22269..8b1afb0 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/CollectPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/CollectPage.cs @@ -42,7 +42,6 @@ } - /// <summary> /// 鍒濆鍖栧ご閮ㄧ晫闈� /// </summary> @@ -81,7 +80,13 @@ imageFLayout.LoadImagePage(); imageFLayout.selectAction += (index) => { - Console.WriteLine("5"); + CommonMethod.Current.MainThread(() => + { + DetailPage detailPage = new DetailPage(); + MainPage.BasePageView.AddChidren(detailPage); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + detailPage.Show(); + }); }; imageFLayout.AdjustRealHeight(16); } diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ButtonFramLayout.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ButtonFramLayout.cs index 9bf4e83..4ee20f1 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ButtonFramLayout.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ButtonFramLayout.cs @@ -40,7 +40,6 @@ TextAlignment = TextAlignment.Center, Gravity = Gravity.CenterHorizontal, Padding = new Padding(0, 20, 0, 20), - IsMoreLines = true, Name = "btnName", @@ -103,6 +102,7 @@ /// </summary> public void AddLeftLine() { + btnLeftLine.Height = this.Height; this.AddChidren(btnLeftLine); } /// <summary> @@ -110,6 +110,8 @@ /// </summary> public void AddRightLine() { + btnRightLine.Height = this.Height; + btnRightLine.X = this.Width - Application.GetRealWidth(1); this.AddChidren(btnRightLine); } @@ -118,6 +120,7 @@ /// </summary> public void AddTopLine() { + btnTopLine.Width = this.Width; this.AddChidren(btnTopLine); } /// <summary> @@ -125,6 +128,8 @@ /// </summary> public void AddBottomLine() { + btnBottomLine.Y = this.Height - Application.GetRealHeight(1); + btnBottomLine.Width = this.Width; this.AddChidren(btnBottomLine); } diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs index 2d3b075..be71892 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/CornerFramLayout.cs @@ -19,13 +19,15 @@ /// </summary> private int mRowNumber; - private List<int> mList; + private List<string> mList; - public Action<int> selectAction = null; + public Action<string> selectAction = null; /// <summary> /// 褰撳墠閫夋嫨鐨勭储寮�(鍐呴儴浣跨敤) /// </summary> private int CurrnetSelectIndex = -1; + + /// <summary> /// /// </summary> @@ -33,13 +35,14 @@ /// <param name="height">瀹瑰櫒楂樺害</param> ///<param name="rowNumber">涓�琛屽嚑涓厓绱�</param> ///<param name="rowNumber">鍦嗚鍊�</param> - public CornerFramLayout(int width, int height, int rowNumber,int radius=0) + public CornerFramLayout(int width, int height, int rowNumber = 0, int radius = 0) { this.BackgroundColor = MusicColor.WhiteColor; this.Width = Application.GetRealWidth(width); this.Height = Application.GetRealHeight(height); this.Radius = (uint)Application.GetRealHeight(radius); this.mRowNumber = rowNumber; + } /// <summary> @@ -61,11 +64,11 @@ /// 璁剧疆鍒楄〃鏁版嵁(璇峰湪鍒濆鍖栧畬鎴愪箣鍓嶈皟鐢�) /// </summary> /// <param name="list"></param> - public void SetList(List<int> list) + public void SetList(List<string> list) { if (list == null) { - list = new List<int>(); + list = new List<string>(); } this.mList = list; } @@ -73,18 +76,26 @@ /// <summary> /// 鑾峰彇娴嬭瘯鍒楄〃鏁版嵁 /// </summary> - public List<int> GetTestList(int count) + public List<string> GetTestList(int count) { - var list = new List<int>(); + var list = new List<string>(); for (int i = 1; i <= count; i++) { - list.Add(i); + if (i % 2 == 0) + { + list.Add("浣犲ソ鍌诲摝!"); + } + else + { + list.Add("鐪熺殑鏄繖鏍风殑鍚�?"); + } } return list; } /// <summary> /// 鍔ㄦ�佸姞杞芥寜閿晫闈� + /// (娉ㄦ剰:mRowNumber!=0) /// </summary> public void LoadButtonPage() { @@ -96,9 +107,10 @@ int xCount = 0; for (int i = 1; i <= this.mList.Count; i++) { - ButtonFramLayout buttonFram = new ButtonFramLayout(); + var d = this.mList[i - 1]; + ButtonFramLayout buttonFram = new ButtonFramLayout(); this.AddChidren(buttonFram); - buttonFram.Tag = i - 1; + buttonFram.Tag = d; buttonFram.Y = Application.GetRealHeight(this.topMargin) + Application.GetRealHeight(ButtonFramLayout.heightFrameLayout * line); buttonFram.X = Application.GetRealWidth(this.leftMargin) + Application.GetRealWidth(ButtonFramLayout.widthFrameLayout * xCount); buttonFram.AddImageView(); @@ -111,7 +123,7 @@ { buttonFram.AddBottomLine(); } - buttonFram.GetNameButton().Text = i.ToString(); + buttonFram.GetNameButton().Text = d; xCount++; if (i % this.mRowNumber == 0) @@ -122,7 +134,10 @@ } buttonFram.SetClickListener((fl, btnIcon, btnName) => { - selectAction?.Invoke((int)buttonFram.Tag); + if (buttonFram.Tag != null) + { + selectAction?.Invoke(buttonFram.Tag.ToString()); + } }); //if (CurrnetSelectIndex != -1 && CurrnetSelectIndex == i) @@ -131,6 +146,76 @@ //} + } + } + + /// <summary> + /// 鍔ㄦ�佸姞杞芥寜閿晫闈� + /// </summary> + /// <param name="list">绱㈠紩鍒楄〃,琛ㄧず鏌愪竴鏉″搴﹀姞瀹�</param> + public void LoadButtonPage(List<int> list) + { + + 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++) + { + var d = this.mList[i - 1]; + ButtonFramLayout buttonFram = null; + if (list.Contains(i)) + { + buttonFram = new ButtonFramLayout(ButtonFramLayout.widthFrameLayout * 2); + buttonFram.Y = Application.GetRealHeight(this.topMargin) + Application.GetRealHeight(currnetheightValue); + buttonFram.X = Application.GetRealWidth(this.leftMargin) + Application.GetRealWidth(currnetWidthValue); + currnetWidthValue += ButtonFramLayout.widthFrameLayout * 2; + } + else + { + buttonFram = new ButtonFramLayout(); + buttonFram.Y = Application.GetRealHeight(this.topMargin) + Application.GetRealHeight(currnetheightValue); + buttonFram.X = Application.GetRealWidth(this.leftMargin) + Application.GetRealWidth(currnetWidthValue); + currnetWidthValue += ButtonFramLayout.widthFrameLayout; + + } + + this.AddChidren(buttonFram); + buttonFram.AddImageView(); + buttonFram.AddNameView(); + buttonFram.Tag = d;//鏍囪鏁版嵁 + buttonFram.GetNameButton().Text = d.ToString(); + if (widthDimensionValue > Application.GetRealWidth(currnetWidthValue)) + { + //鍔犲彸绾� + buttonFram.AddRightLine(); + } + + if (heightDimensionValue > buttonFram.Bottom) + { + //鍔犲簳绾� + buttonFram.AddBottomLine(); + } + + if (widthDimensionValue < Application.GetRealWidth(currnetWidthValue)) + { + currnetheightValue += ButtonFramLayout.heightFrameLayout; + currnetWidthValue = 0; + } + + buttonFram.SetClickListener((fl, btnIcon, btnName) => + { + if (buttonFram.Tag != null) + { + selectAction?.Invoke(buttonFram.Tag.ToString()); + } + }); + + //if (CurrnetSelectIndex != -1 && CurrnetSelectIndex == i) + //{ + // selectAction?.Invoke((int)buttonFram.Tag); + //} } } @@ -148,16 +233,13 @@ int xCount = 0; for (int i = 1; i <= this.mList.Count; i++) { + var d = this.mList[i - 1]; ImageFramlayout imageFram = new ImageFramlayout(); imageFram.AddView(this); - //this.AddChidren(imageFram); - imageFram.Tag = i - 1; - imageFram.Y = Application.GetRealHeight(this.topMargin)+ Application.GetRealHeight((ImageFramlayout.heightFrameLayout + 20) * line); + imageFram.Tag = d; + imageFram.Y = Application.GetRealHeight(this.topMargin) + Application.GetRealHeight((ImageFramlayout.heightFrameLayout + 20) * line); imageFram.X = Application.GetRealWidth((ImageFramlayout.widthFrameLayout + 8) * xCount); - //imageFram.AddImageView(); - //imageFram.AddScoreButton(); - //imageFram.AddNameButton(); - imageFram.btnName.Text = i.ToString(); + imageFram.btnName.Text = d; xCount++; if (i % this.mRowNumber == 0) @@ -168,7 +250,10 @@ } imageFram.SetClickListener((fl) => { - selectAction?.Invoke((int)imageFram.Tag); + if (imageFram.Tag != null) + { + selectAction?.Invoke(imageFram.Tag.ToString()); + } }); //if (CurrnetSelectIndex != -1 && CurrnetSelectIndex == i) @@ -192,22 +277,23 @@ /// <summary> /// 鏈�鍚庝竴琛� /// </summary> - /// <param name="value"></param> + /// <param name="index">褰撳墠绱㈠紩鍊�</param> /// <returns></returns> - private bool IsLastColumn(int value) + private bool IsLastColumn(int index) { - int lineCount = this.mList.Count / this.mRowNumber; + int lineCount = this.mList.Count / this.mRowNumber;//寰楀嚭琛屾暟 int number = this.mList.Count % this.mRowNumber; if (number != 0) { - if (value > lineCount * this.mRowNumber) + if (index > lineCount * this.mRowNumber) { return true; } } else { - if (value > lineCount-- * this.mRowNumber) + int value = --lineCount * this.mRowNumber; + if (index > value) { return true; } @@ -229,5 +315,42 @@ }; return false; } + + + /// <summary> + /// 閲嶆柊璁$畻button瀹藉害 + /// </summary> + /// <param name="button">鎺т欢</param> + /// <param name="widthMax">瀹藉害鏈�澶ф渶</param> + /// <param name="padding">鍐呰竟璺�</param> + private void AdjustRealWidth(Button button, int widthMax = 0, int padding = 0) + { + if (button == null) + { + return; + } + int width; + if (widthMax == 0) + { + //鍐呰竟璺� + width = button.GetTextWidth() + Application.GetRealWidth(padding * 2); + } + else + { + if (button.GetTextWidth() > Application.GetRealWidth(widthMax)) + { + + button.TextSize = 10;//鎺т欢楂樺害涓嶅彉,鏀瑰彉瀛椾綋澶у皬,鍑嗗鎹㈣; + width = Application.GetRealWidth(widthMax); + } + else + { + width = button.GetTextWidth(); + } + + } + + button.Width = width; + } } } diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/HorizontalFramLayout.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/HorizontalFramLayout.cs index 4f09852..e9a76cc 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/HorizontalFramLayout.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/HorizontalFramLayout.cs @@ -10,9 +10,15 @@ /// </summary> public class HorizontalFramLayout : HorizontalScrolViewLayout { - public HorizontalFramLayout() + /// <summary> + /// + /// </summary> + /// <param name="width">瀹瑰櫒瀹藉害</param> + /// <param name="height">瀹瑰櫒楂樺害</param> + public HorizontalFramLayout(int width, int height) { - this.Height = Application.GetRealHeight(28); + this.Height = Application.GetRealHeight(height); + this.Width = Application.GetRealWidth(width); } private List<string> mList = new List<string>(); diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ImageFramlayout.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ImageFramlayout.cs index 848fc15..2ed5377 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ImageFramlayout.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/CommonView/ImageFramlayout.cs @@ -68,7 +68,7 @@ { EventHandler<MouseEventArgs> UpClick = (sender, e) => { - this.BackgroundColor = 0x00000000; + //this.BackgroundColor = 0x00000000; //寮硅捣鏉ヨ繕鍘熻儗鏅鑹� }; @@ -90,7 +90,7 @@ EventHandler<MouseEventArgs> DownClick = (sender, e) => { //鎸変笅鍘绘敼鍙樿儗鏅鑹� - this.BackgroundColor = 0xff454635; + //this.BackgroundColor = 0xff454635; action?.Invoke(this); }; this.MouseUpEventHandler += DownClick; diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/DetailPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/DetailPage.cs new file mode 100644 index 0000000..0a2ebc6 --- /dev/null +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/DetailPage.cs @@ -0,0 +1,375 @@ +锘縰sing 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.Intelligence.Automation; +using System.Linq; +using HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView; +using HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock; +namespace HDL_ON.UI.UI2.FuntionControlView.Aks +{ + /// <summary> + /// 褰辩墖璇︽儏鐣岄潰 + /// </summary> + public class DetailPage : FrameLayout + { + public DetailPage() + { + } + + /// <summary> + /// 澶撮儴甯冨眬 + /// </summary> + private TopView topView; + /// <summary> + /// 鍒犻櫎璁惧鍚庨渶瑕佹洿鏂扮晫闈㈢殑鍥炶皟 + /// </summary> + public Action action; + + /// <summary> + /// 绔嬪嵆鎾斁 + /// </summary> + Button btnPaly; + + public void Show() + { + //鍒濆鍖朥I + this.InitTop(); + this.InitMiddle(); + //鍒濆鍖栦簨浠� + this.EventListener(); + //璇诲彇鏁版嵁 + + } + /// <summary> + /// 鍒濆鍖栧ご閮ㄧ晫闈� + /// </summary> + private void InitTop() + { + this.BackgroundColor = MusicColor.ViewColor; + this.topView = new TopView(); + this.topView.setBtn.Visible = false; + this.topView.topNameBtn.TextID = StringId.yingpianjieshao; + this.AddChidren(topView.TopFLayoutView()); + } + /// <summary> + /// 鍒濆鍖栦腑閮ㄧ晫闈� + /// </summary> + private void InitMiddle() + { + var vv = new VerticalScrolViewLayout + { + Y = topView.fLayout.Bottom, + Height = Application.GetRealHeight(H_W.H - H_W.T_Height), + BackgroundColor = MusicColor.WhiteColor, + }; + this.AddChidren(vv); + BaseFramLayout baseFramLayout = new BaseFramLayout(); + vv.AddChidren(baseFramLayout); + + Button btnImage = new Button + { + X = Application.GetRealWidth(16), + Y = Application.GetRealHeight(16), + Width = Application.GetRealWidth(140), + Height = Application.GetRealHeight(180), + BackgroundColor = 0xff765723, + //UnSelectedImagePath = "AksIcon/kai.png", + Radius = (uint)Application.GetRealHeight(12), + }; + baseFramLayout.AddChidren(btnImage); + //鐢靛奖鍚嶇О + Button btnName = new Button + { + X = btnImage.Right + Application.GetRealWidth(16), + Y = Application.GetRealHeight(36), + Width = Application.GetRealWidth(178), + Height = Application.GetRealHeight(45), + Text = "鍡ㄨ捣鏉ヤ簡鍏勫紵浠�,骞村簳鍒嗙孩,浣犳嬁7浠�,鎴戞嬁3浠�", + TextColor = MusicColor.TextColor, + TextSize = TextSize.Text16, + TextAlignment = TextAlignment.CenterLeft, + IsBold = true, + IsMoreLines=true, + }; + baseFramLayout.AddChidren(btnName); + this.AdjustRealWidth(btnName, 178); + + //骞翠唤 + Button btnYear = new Button + { + X = btnImage.Right + Application.GetRealWidth(16), + Y = btnName.Bottom + Application.GetRealHeight(12), + Width = Application.GetRealWidth(34), + Height = Application.GetRealHeight(20), + Text = "2023", + TextColor = MusicColor.TextColor, + TextSize = TextSize.Text14, + TextAlignment = TextAlignment.CenterLeft, + }; + baseFramLayout.AddChidren(btnYear); + this.AdjustRealWidth(btnYear, 34); + + //"/" + Button btnSlope = new Button + { + X = btnYear.Right + Application.GetRealWidth(8), + Y = btnName.Bottom + Application.GetRealHeight(12), + Width = Application.GetRealWidth(34), + Height = Application.GetRealHeight(20), + Text = "/", + TextColor = MusicColor.LineColor, + TextSize = TextSize.Text14, + }; + baseFramLayout.AddChidren(btnSlope); + + //鍦板尯 + Button btnRegion = new Button + { + X = btnSlope.Right + Application.GetRealWidth(8), + Y = btnName.Bottom + Application.GetRealHeight(12), + Width = Application.GetRealWidth(140), + Height = Application.GetRealHeight(20), + Text = "涓浗濂界數褰�", + TextColor = MusicColor.TextColor, + TextSize = TextSize.Text14, + TextAlignment = TextAlignment.CenterLeft, + }; + baseFramLayout.AddChidren(btnRegion); + this.AdjustRealWidth(btnRegion, 140); + + + //鐢靛奖鍒嗘暟 + Button btnGrade = new Button + { + X = btnImage.Right + Application.GetRealWidth(16), + Y = btnYear.Bottom + Application.GetRealHeight(20), + Width = Application.GetRealWidth(45), + Height = Application.GetRealHeight(43), + Text = "9.9", + TextSize = 32, + TextColor = MusicColor.TextColor, + TextAlignment = TextAlignment.CenterLeft, + IsBold = true, + }; + baseFramLayout.AddChidren(btnGrade); + this.AdjustRealWidth(btnGrade, 45); + + // + Button btnScore = new Button + { + X = btnGrade.Right + Application.GetRealWidth(8), + Y = btnYear.Bottom + Application.GetRealHeight(46), + Width = Application.GetRealWidth(26), + Height = Application.GetRealHeight(17), + TextID = StringId.pingfen, + TextColor = 0xffA5AEBC, + TextSize = TextSize.Text12, + TextAlignment = TextAlignment.CenterLeft, + }; + baseFramLayout.AddChidren(btnScore); + + + Button btnCollectImage = new Button + { + X = btnImage.Right + Application.GetRealWidth(167), + Y = btnRegion.Bottom + Application.GetRealHeight(12), + Width = Application.GetRealWidth(32), + Height = Application.GetRealWidth(32), + UnSelectedImagePath = "MusicIcon/collect.png", + SelectedImagePath = "MusicIcon/collectSelected.png", + }; + baseFramLayout.AddChidren(btnCollectImage); + + Button btnCollectText = new Button + { + X = btnImage.Right + Application.GetRealWidth(169), + Y = btnCollectImage.Bottom + Application.GetRealHeight(2), + Width = Application.GetRealWidth(36), + Height = Application.GetRealHeight(17), + TextID = StringId.weishoucang, + TextColor = 0xffA5AEBC, + TextSize = TextSize.Text12, + TextAlignment = TextAlignment.CenterLeft, + }; + baseFramLayout.AddChidren(btnCollectText); + + //鐢靛奖绠�浠� + Button btnIntroduceTitle = new Button + { + X =Application.GetRealWidth(16), + Y = btnImage.Bottom + Application.GetRealHeight(28), + Width = Application.GetRealWidth(300), + Height = Application.GetRealHeight(23), + //TextID = StringId., + Text= "鐢靛奖绠�浠�", + TextColor = MusicColor.TextColor, + TextSize = TextSize.Text16, + TextAlignment = TextAlignment.CenterLeft, + IsBold=true, + }; + baseFramLayout.AddChidren(btnIntroduceTitle); + + + //鐢靛奖绠�浠嬪唴瀹� + Button btnIntroduceContent = new Button + { + X = Application.GetRealWidth(16), + Y = btnIntroduceTitle.Bottom + Application.GetRealHeight(12), + Width = Application.GetRealWidth(343), + Height = Application.GetRealHeight(140), + //TextID = StringId., + Text = "鐢靛奖鍚嶇О锛氥�婂彲鎬曠殑涓�鍫傝銆嬬數褰遍暱搴︼細澶х害1灏忔椂宸﹀彸婕斿憳浠嬬粛锛氫富浜哄叕锛氭湰浜猴紙涔熷氨鏄垜锛夐厤瑙掞細琛ㄥ摜銆佽〃鍝ョ殑濡堝銆佹湰浜虹殑濡堝銆佸彲鎬曠殑鑰佸笀鍜屼竴浜涘鐢熷奖鐗囩畝浠嬶細鍦ㄤ竴涓槼鍏夋槑濯氱殑鏃╂櫒锛屾垜鍜岃〃鍝ヨ鍚勮嚜鐨勫濡堥�肩潃鍘讳竴涓嫳璇鏍″鑻辫銆傝櫧鐒舵棭鏅ㄩ槼鍏夋槑濯氾紝浣嗘垜鐨勫績閲屽嵈鍦ㄤ笅鐫�澶ч洦锛堝績鎯呭緢涓嶅ソ锛夛紝瑕佹槸鑻辫璇捐兘鍙樻垚鐢佃剳璇惧氨濂戒簡锛堟垜鐨勫己椤癸級", + TextColor = MusicColor.TextCancelColor, + TextSize = TextSize.Text14, + TextAlignment = TextAlignment.TopLeft, + IsBold = true, + IsMoreLines=true, + }; + baseFramLayout.AddChidren(btnIntroduceContent); + + #region -----婕斿憳鐓х墖 鍚嶇О------ + //婕斿憳 + Button btnActor = new Button + { + X = Application.GetRealWidth(16), + Y = btnIntroduceContent.Bottom + Application.GetRealHeight(28), + Width = Application.GetRealWidth(300), + Height = Application.GetRealHeight(23), + //TextID = StringId.yan, + Text = "婕斿憳", + TextColor = MusicColor.TextColor, + TextSize = TextSize.Text16, + TextAlignment = TextAlignment.CenterLeft, + IsBold = true, + }; + baseFramLayout.AddChidren(btnActor); + + + HorizontalScrolViewLayout horizontalFram = new HorizontalScrolViewLayout { + Y= btnActor.Bottom+ Application.GetRealHeight(12), + X = Application.GetRealWidth(16), + Height =Application.GetRealHeight(112), + Width=Application.GetRealWidth(375-16), + }; + baseFramLayout.AddChidren(horizontalFram); + + for (int i = 0; i < 6; i++) + { + FrameLayout actorFrame = new FrameLayout + { + Height = Application.GetRealHeight(112), + Width = Application.GetRealWidth(72), + }; + horizontalFram.AddChidren(actorFrame); + + Button btnActorImage = new Button + { + Width = Application.GetRealWidth(72), + Height = Application.GetRealHeight(84), + Radius = (uint)Application.GetRealHeight(8), + //UnSelectedImagePath = "Collection/CollectionGrayIcon.png", + BackgroundColor = 0xff765876, + }; + actorFrame.AddChidren(btnActorImage); + + + Button btnActorName = new Button + { + Y = btnActorImage.Bottom + Application.GetRealHeight(8), + Width = Application.GetRealWidth(72), + Height = Application.GetRealHeight(20), + TextSize = TextSize.Text14, + TextColor = MusicColor.TextColor, + TextAlignment = TextAlignment.Center, + IsMoreLines = true, + Text = "鍒樺痉鍗�", + }; + actorFrame.AddChidren(btnActorName); + + //闂撮殧,寮勪釜绌虹殑杩涘幓鍗犱綅缃� + Button btnSpacing = new Button + { + Width = Application.GetRealWidth(8), + }; + horizontalFram.AddChidren(btnSpacing); + } + + + #endregion + + //绔嬪嵆鎾斁 + btnPaly = new Button + { + Y = horizontalFram.Bottom + Application.GetRealHeight(70), + Width = Application.GetRealWidth(220), + Height = Application.GetRealHeight(44), + TextID = StringId.lijibofang, + TextColor = MusicColor.WhiteColor, + TextSize = TextSize.Text16, + TextAlignment = TextAlignment.Center, + Gravity=Gravity.CenterHorizontal, + BackgroundColor=MusicColor.SelectedColor, + Radius=(uint)Application.GetRealHeight(22), + }; + baseFramLayout.AddChidren(btnPaly); + + baseFramLayout.AdjustRealHeight(37); + } + /// <summary> + /// 娉ㄥ唽浜嬩欢 + /// </summary> + private void EventListener() + { + //杩斿洖 + this.topView.clickBackBtn.MouseUpEventHandler += (sender, e) => + { + this.RemoveFromParent(); + }; + //绔嬪嵆鎾斁 + this.btnPaly.MouseUpEventHandler += (sender, e) => + { + + }; + + } + /// <summary> + /// 閲嶆柊璁$畻button瀹藉害 + /// </summary> + /// <param name="button">鎺т欢</param> + /// <param name="widthMax">瀹藉害鏈�澶ф渶</param> + /// <param name="padding">鍐呰竟璺�</param> + private void AdjustRealWidth(Button button, int widthMax = 0, int padding = 0) + { + if (button == null) + { + return; + } + int width; + if (widthMax == 0) + { + //鍐呰竟璺� + width = button.GetTextWidth() + Application.GetRealWidth(padding * 2); + } + else + { + if (button.GetTextWidth() > Application.GetRealWidth(widthMax)) + { + + width = Application.GetRealWidth(widthMax); + } + else + { + width = button.GetTextWidth(); + } + + } + + button.Width = width; + } + } +} diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/GFPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/GFPage.cs new file mode 100644 index 0000000..10ace71 --- /dev/null +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/GFPage.cs @@ -0,0 +1,102 @@ +锘縰sing System; +using System.Collections.Generic; +using HDL_ON.UI.Music; +using HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView; +using Shared; +using static HDL_ON.UI.UI2.FuntionControlView.Aks.AksPage; +namespace HDL_ON.UI.UI2.FuntionControlView.Aks +{ + /// <summary> + /// 鍔熸斁鐣岄潰 + /// </summary> + public class GFPage : BaseFramLayout + { + public GFPage() + { + } + + public Action<IntType> action; + CornerFramLayout cornerFram; + TypeMultiFramLayout typeMultiFramLayout; + + public void Show() + { + //鍒濆鍖朥I + this.InitUI(); + //鍒濆鍖栦簨浠� + this.EventListener(); + //璇诲彇鏁版嵁 + this.ReadData(); + + } + + private void ReadData() + { + + } + + private void EventListener() + { + cornerFram.selectAction += (value) => + { + Console.WriteLine("1"); + }; + + typeMultiFramLayout.SetLeftFlClickListener((f) => + { + SxqPage sxqPage = new SxqPage(); + MainPage.BasePageView.AddChidren(sxqPage); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + sxqPage.Show(); + + }); + + typeMultiFramLayout.SetRightFlClickListener((f) => + { + Console.WriteLine("4"); + 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, + }; + this.AddChidren(btnTitle); + + cornerFram = new CornerFramLayout(343, 452, 4, 17); + cornerFram.X = Application.GetRealWidth(16); + cornerFram.Y = btnTitle.Bottom + Application.GetRealHeight(16); + this.AddChidren(cornerFram); + cornerFram.SetList(cornerFram.GetTestList(17)); + cornerFram.SetMargin(16, 0, 16, 0); + cornerFram.LoadButtonPage(); + + + CornerFramLayout cornerBottomFram = new CornerFramLayout(343, 72, 0, 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); + } + } +} diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/TYYPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/TYYPage.cs new file mode 100644 index 0000000..7676c1f --- /dev/null +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/TYYPage.cs @@ -0,0 +1,129 @@ +锘縰sing System; +using System.Collections.Generic; +using HDL_ON.UI.Music; +using HDL_ON.UI.UI2.FuntionControlView.Aks.CommonView; +using Shared; +using static HDL_ON.UI.UI2.FuntionControlView.Aks.AksPage; +namespace HDL_ON.UI.UI2.FuntionControlView.Aks +{ + /// <summary> + /// 鎶曞奖浠晫闈� + /// </summary> + public class TYYPage : BaseFramLayout + { + public TYYPage() + { + } + + public Action<IntType> action; + CornerFramLayout cornerTopFram; + MenuFramLayout menuFram; + TypeMultiFramLayout typeMultiFramLayout; + + public void Show() + { + //鍒濆鍖朥I + this.InitUI(); + //鍒濆鍖栦簨浠� + this.EventListener(); + //璇诲彇鏁版嵁 + this.ReadData(); + + } + + private void ReadData() + { + + } + + private void EventListener() + { + cornerTopFram.selectAction += (value) => + { + Console.WriteLine("1"); + }; + + menuFram.SetTopClickListener((b) => + { + + Console.WriteLine("5"); + }); + menuFram.SetBottomClickListener((b) => + { + Console.WriteLine("6"); + }); + menuFram.SetLeftClickListener((b) => + { + Console.WriteLine("7"); + }); + menuFram.SetRightClickListener((b) => + { + Console.WriteLine("8"); + }); + menuFram.SetOkClickListener((b) => + { + Console.WriteLine("9"); + }); + + typeMultiFramLayout.SetLeftFlClickListener((f) => + { + SxqPage sxqPage = new SxqPage(); + MainPage.BasePageView.AddChidren(sxqPage); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + sxqPage.Show(); + + }); + + typeMultiFramLayout.SetRightFlClickListener((f) => + { + Console.WriteLine("4"); + 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.touyingyi, + }; + this.AddChidren(btnTitle); + + cornerTopFram = new CornerFramLayout(343, 452 + 84, 4, 17); + cornerTopFram.X = Application.GetRealWidth(16); + cornerTopFram.Y = btnTitle.Bottom + Application.GetRealHeight(16); + this.AddChidren(cornerTopFram); + cornerTopFram.SetList(cornerTopFram.GetTestList(17)); + cornerTopFram.SetMargin(16, 0, 16, 0); + cornerTopFram.LoadButtonPage(new List<int> { 3, 4, 5 }); + + + CornerFramLayout cornerBottomFram = new CornerFramLayout(343, 292, 0, 17); + cornerBottomFram.X = Application.GetRealWidth(16); + cornerBottomFram.Y = cornerTopFram.Bottom + Application.GetRealHeight(16); + cornerBottomFram.BackgroundColor = MusicColor.WhiteColor; + cornerBottomFram.Radius = (uint)Application.GetRealHeight(17); + this.AddChidren(cornerBottomFram); + + menuFram = new MenuFramLayout(); + menuFram.Y = Application.GetRealHeight(24); + menuFram.AddView(cornerBottomFram); + + typeMultiFramLayout = new TypeMultiFramLayout(); + typeMultiFramLayout.multiFramLayout.Y = menuFram.Bottom + Application.GetRealHeight(32); + typeMultiFramLayout.AddView(cornerBottomFram); + typeMultiFramLayout.btnBottonRightName.TextID = StringId.touyingyi; + + this.AdjustRealHeight(16); + } + } +} diff --git a/HDL_ON/UI/UI2/FuntionControlView/Aks/YkPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Aks/YkPage.cs index d56a238..cf704b6 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Aks/YkPage.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Aks/YkPage.cs @@ -73,12 +73,14 @@ BaseFramLayout typeFLayout = new BaseFramLayout(); fLayout.AddChidren(typeFLayout); - int span= Application.GetRealHeight(20);//闂撮殧 - int x = Application.GetRealHeight(16);//X杞村亸绉婚噺 - HorizontalFramLayout horizontalFram = new HorizontalFramLayout(); + int span= 20;//闂撮殧 + int x= 16;//X杞村亸绉婚噺 + int width =375-x; + int height = 28; + HorizontalFramLayout horizontalFram = new HorizontalFramLayout(width, height); typeFLayout.AddChidren(horizontalFram); - horizontalFram.Y = Application.GetRealHeight(20); - horizontalFram.X = x; + horizontalFram.Y = Application.GetRealHeight(span); + horizontalFram.X = Application.GetRealHeight(x); horizontalFram.SetIndex(2); horizontalFram.SetList(horizontalFram.GetTestData); horizontalFram.InitControl(); @@ -86,10 +88,10 @@ Console.WriteLine("1"); }; - HorizontalFramLayout horizontalFram1 = new HorizontalFramLayout(); + HorizontalFramLayout horizontalFram1 = new HorizontalFramLayout(width, height); typeFLayout.AddChidren(horizontalFram1); - horizontalFram1.Y = horizontalFram.Bottom + span; - horizontalFram1.X = x; + horizontalFram1.Y = horizontalFram.Bottom + Application.GetRealHeight(span); + horizontalFram1.X = Application.GetRealHeight(x); horizontalFram1.SetIndex(2); horizontalFram1.SetList(horizontalFram1.GetTestData); horizontalFram1.InitControl(); @@ -97,20 +99,20 @@ Console.WriteLine("2"); }; - HorizontalFramLayout horizontalFram2 = new HorizontalFramLayout(); + HorizontalFramLayout horizontalFram2 = new HorizontalFramLayout(width, height); typeFLayout.AddChidren(horizontalFram2); - horizontalFram2.Y = horizontalFram1.Bottom + span; - horizontalFram2.X = x; + horizontalFram2.Y = horizontalFram1.Bottom + Application.GetRealHeight(span); + horizontalFram2.X = Application.GetRealHeight(x); horizontalFram2.SetIndex(2); horizontalFram2.SetList(horizontalFram2.GetTestData); horizontalFram2.InitControl(); horizontalFram2.SelectTypeEvent += (index) => { Console.WriteLine("3"); }; - HorizontalFramLayout horizontalFram3 = new HorizontalFramLayout(); + HorizontalFramLayout horizontalFram3 = new HorizontalFramLayout(width, height); typeFLayout.AddChidren(horizontalFram3); - horizontalFram3.Y = horizontalFram2.Bottom + span; - horizontalFram3.X = x; + horizontalFram3.Y = horizontalFram2.Bottom + Application.GetRealHeight(span); + horizontalFram3.X = Application.GetRealHeight(x); horizontalFram3.SetIndex(2); horizontalFram3.SetList(horizontalFram3.GetTestData); horizontalFram3.InitControl(); @@ -139,7 +141,14 @@ imageFLayout.LoadImagePage(); imageFLayout.selectAction += (index) => { - Console.WriteLine("5"); + CommonMethod.Current.MainThread(() => + { + DetailPage detailPage = new DetailPage(); + MainPage.BasePageView.AddChidren(detailPage); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + detailPage.Show(); + }); + }; imageFLayout.AdjustRealHeight(16); } diff --git a/HDL_ON/UI/UI2/FuntionControlView/Music/View/SizeClass.cs b/HDL_ON/UI/UI2/FuntionControlView/Music/View/SizeClass.cs index f0eeb8a..32505bf 100644 --- a/HDL_ON/UI/UI2/FuntionControlView/Music/View/SizeClass.cs +++ b/HDL_ON/UI/UI2/FuntionControlView/Music/View/SizeClass.cs @@ -68,6 +68,8 @@ public const uint TextCancelColor = 0xFF798394; + + } public class H_W -- Gitblit v1.8.0