From 122dc4312c72b2d2aaa50a2adf84165f5600b99a Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期三, 27 一月 2021 17:13:48 +0800 Subject: [PATCH] 2021-1-27-1 --- HDL_ON/UI/UI2/3-Intelligence/Automation/EmptyClass.cs | 196 +++++++++++++++++++++++++++--------------------- 1 files changed, 109 insertions(+), 87 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/EmptyClass.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/EmptyClass.cs index 2f53d87..2293a25 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/EmptyClass.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/EmptyClass.cs @@ -8,9 +8,27 @@ { public class EmptyClass : FrameLayout { - - public void Show() + /// <summary> + /// + /// </summary> + /// <param name="list">琛ㄧず璇ュ垪琛ㄥ厓绱燗-Z瀛楁瘝绛涢�夋樉绀哄嚭鏉�</param> + /// <param name="list6">琛ㄧず璇ュ垪琛ㄥ厓绱犳樉绀哄湪list鍓嶉潰(璇ュ垪琛ㄥ厓绱犱笉鍋欰-Z瀛楁瘝绛涢��),娌℃湁鍙互涓簂ist6=null</param> + /// <param name="action">杩斿洖閫変腑鏂囨湰</param> + public void Show(List<string> list, List<string> list6, Action<string> action) { + + + //string text = "30"; + //byte[] bytes = new byte[text.Length / 2]; + //for (int i = 0, j = 0; i < bytes.Length; j += 2, i++) + //{ + // //鎶�16杩涘害杞崲鎴恇yte + // bytes[i] = Convert.ToByte(text.Substring(j, 2), 16); + //} + ////鎶奲yte鏁扮粍杞崲鎴愭枃瀛� + //string str = System.Text.Encoding.UTF8.GetString(bytes); + + var frameLayout = new FrameLayout { BackgroundColor = CSS.CSS_Color.viewTop, @@ -41,23 +59,25 @@ UnSelectedImagePath = "LogicIcon/back.png", }; frameLayout.AddChidren(backBtn); - backBtn.MouseUpEventHandler += (sen,e) => { + backBtn.MouseUpEventHandler += (sen, e) => + { this.RemoveFromParent(); }; - var editText = new EditText { + var editText = new EditText + { Width = Application.GetRealWidth(343), Height = Application.GetRealWidth(28), X = Application.GetRealWidth(TextSize.left16), Y = Application.GetRealHeight(76), BackgroundColor = CSS.CSS_Color.view, - TextColor= CSS.CSS_Color.textColor, - TextAlignment=TextAlignment.Center, - + TextColor = CSS.CSS_Color.textColor, + TextAlignment = TextAlignment.Center, + }; frameLayout.AddChidren(editText); - var fram = new FrameLayout + var fram = new FrameLayout { Y = Application.GetRealHeight(112), Height = Application.GetRealHeight(667 - 112), @@ -65,25 +85,38 @@ BackgroundColor = CSS.CSS_Color.view, }; this.AddChidren(fram); - - var list11 = new List<string> { - "鐖变綘", "鍝庡懄","鍩冨強","鍝堝紬鎹㈠3鍝堝紬", "鐖卞痉鍗庡v","淇哄嚑涓柉浜�", - "鎷滀簡", "宸村+", "鐧惧か", "鐧惧悎鍦扮悊璇句綘鎵撶畻", "涓嶅害鑰侀浼忔灔", "姣斿埌涔濈偣", - "杞︾珯","娴嬭瘯","姝ゅ湴", "鎵嶇湅瑙佸ソ寰楀揩","鍚冭蒋楗�","浠庣湅瑙佷簩鍗佸", - "绛夊緟鏈轰細鍚�","鐨勫鎴�", "澶氬枬鐐�", "鐧昏鍝︾劧鍚�", "鎵撶數璇�", - "鎭╄偆闇滅湅灏辩湅浜�", "楗挎os","鎭堕瓟鍩�","鍎跨鑱斿姩", "鎭╁叚棰楀瓙寮规媺鎷夎¥娲楁尽浜�","鍙戝ぇ瀛︾敓鍙戝彂", - "鐪熷帀瀹砳鍙戝灏�", "鐭ラ亾浣犱粯娆句簡鍙�", "灏厭鍥炲", "鏀硅繘鐨勮瘽", "澶╁ぉ閫熷害鍥炵瓟", "澶ソ浜嗗紑杞�", - "鍑忚偉鐨勭湅杩�","妗″嚭鍙e閭�","濡傛灉瑙夊緱", "寰堣垝鏈嶇殑","鍚冭蒋楗�","浠庣湅瑙佷簩鍗佸", - "榫欏嵎椋庝簭澶у彂","鍘诲ソ鐪�", "澶氬枬鐐�", "濂芥氮璐瑰ソ", "鎵撶數璇�"}; - var list1 = GetDateList(list11); + + //var list11 = new List<string> { + // "鐖变綘", "鍝庡懄","鍩冨強","鍝堝紬鎹㈠3鍝堝紬", "鐖卞痉鍗庡v","淇哄嚑涓柉浜�", + // "鎷滀簡", "宸村+", "鐧惧か", "鐧惧悎鍦扮悊璇句綘鎵撶畻", "涓嶅害鑰侀浼忔灔", "姣斿埌涔濈偣", + // "杞︾珯","娴嬭瘯","姝ゅ湴", "鎵嶇湅瑙佸ソ寰楀揩","鍚冭蒋楗�","浠庣湅瑙佷簩鍗佸", + // "绛夊緟鏈轰細鍚�","鐨勫鎴�", "澶氬枬鐐�", "鐧昏鍝︾劧鍚�", "鎵撶數璇�", + // "鎭╄偆闇滅湅灏辩湅浜�", "楗挎os","鎭堕瓟鍩�","鍎跨鑱斿姩", "鎭╁叚棰楀瓙寮规媺鎷夎¥娲楁尽浜�","鍙戝ぇ瀛︾敓鍙戝彂", + // "鐪熷帀瀹砳鍙戝灏�", "鐭ラ亾浣犱粯娆句簡鍙�", "灏厭鍥炲", "鏀硅繘鐨勮瘽", "澶╁ぉ閫熷害鍥炵瓟", "澶ソ浜嗗紑杞�", + // "鍑忚偉鐨勭湅杩�","妗″嚭鍙e閭�","濡傛灉瑙夊緱", "寰堣垝鏈嶇殑","鍚冭蒋楗�","浠庣湅瑙佷簩鍗佸", + // "榫欏嵎椋庝簭澶у彂","鍘诲ソ鐪�", "澶氬枬鐐�", "濂芥氮璐瑰ソ", "鎵撶數璇�"}; + if (list == null) + { + list = new List<string>(); + } + if (list6 == null) + { + list6 = new List<string>(); + } + var list1 = GetDateList(list); + list1.Add("1"); + list1.InsertRange(0, list6); + var vv = new VerticalScrolViewLayout(); fram.AddChidren(vv); + var listStr = new List<string>(); + listStr.AddRange(list1); editText.TextChangeEventHandler += (view, strView) => { - var listStr = new List<string>(); + listStr.Clear(); for (int i = 0; i < list1.Count; i++) { var s = list1[i]; @@ -92,7 +125,7 @@ listStr.Add(s); } } - RefreshLayout(vv, listStr); + RefreshLayout(vv, listStr, action); }; @@ -102,50 +135,55 @@ var a_zFra = new FrameLayout { Y = Application.GetRealHeight(46), - X = Application.GetRealWidth(362-6), + X = Application.GetRealWidth(362 - 6), Height = Application.GetRealHeight(351), - Width = Application.GetRealWidth(10+6), + Width = Application.GetRealWidth(10 + 6), }; fram.AddChidren(a_zFra); - var list = GetList(); - for (int i = 0; i < list.Count; i++) + var list2 = GetList(); + for (int i = 0; i < list2.Count; i++) { var a_zBtn = new Button { - Padding= new Padding(0,6,0,0), + Padding = new Padding(0, 6, 0, 0), Y = Application.GetRealHeight(i * 13), Width = Application.GetRealWidth(16), Height = Application.GetRealHeight(10), - Text = list[i], + Text = list2[i], TextSize = TextSize.text10, TextColor = CSS.CSS_Color.textConfirmColor, - Tag= list[i], + Tag = list2[i], }; a_zFra.AddChidren(a_zBtn); a_zBtn.MouseUpEventHandler += (sender, e) => { - //鎵惧埌绱㈠紩鍊� - var index = list1.IndexOf(a_zBtn.Tag.ToString()); - if (index != -1) + + try { - vv.ScrollToViewIndex(index); - } - else - { - if (a_zBtn.Tag.ToString() == "#") + //鎵惧埌绱㈠紩鍊� + var index = listStr.IndexOf(a_zBtn.Tag.ToString()); + if (index != -1) { - vv.ScrollToViewIndex(0); + vv.ScrollToViewIndex(index); + } + else + { + if (a_zBtn.Tag.ToString() == "#") + { + vv.ScrollToViewIndex(0); + } } } + catch { } }; } #endregion - - RefreshLayout(vv, list1); + + RefreshLayout(vv, list1,action); @@ -157,7 +195,7 @@ /// </summary> /// <param name="vv">鐖舵帶浠�</param> /// <param name="list">鏄剧ず鍒楄〃</param> - private void RefreshLayout(VerticalScrolViewLayout vv, List<string> list) + private void RefreshLayout(VerticalScrolViewLayout vv, List<string> list,Action<string> action) { vv.RemoveAll(); foreach (var str in list) @@ -174,9 +212,10 @@ TextAlignment = TextAlignment.CenterLeft, Text = str, }; - var clickBtn = new Button { + var clickBtn = new Button + { Tag = str, - Width=Application.GetRealWidth(350), + Width = Application.GetRealWidth(350), }; if (Exist(str)) @@ -194,7 +233,7 @@ rowLayout.AddChidren(clickBtn); } vv.AddChidren(rowLayout); - clickBtn.MouseUpEventHandler += (se, e) => + clickBtn.MouseUpEventHandler += (sen, e) => { //鎵惧埌绱㈠紩鍊� var index = list.IndexOf(clickBtn.Tag.ToString()); @@ -213,7 +252,7 @@ private bool Exist(string str) { - if (GetList().Contains(str)|| "涓绘祦鍝佺墝"== str) + if (GetList().Contains(str) || "涓绘祦鍝佺墝" == str) { return true; } @@ -230,64 +269,47 @@ private List<string> GetDateList(List<string> mList) { var list = new List<string>(); - for (int i = 0; i < mList.Count; i++) + //鑾峰彇A-Z瀛楁瘝鍒楄〃 + var a_zList = GetList(false); + //閬嶅巻A-Z瀛楁瘝鍒楄〃 + for (int i = 0; i < a_zList.Count; i++) { - //鎻愬彇瀛楃涓茬涓�浣� - string str = mList[i].Substring(0, 1); - var s = GetCharSpellCode(str); - if (!list.Contains(s)) + var zimu = a_zList[i]; + //閬嶅巻瀛楃涓插垪琛� + for (int a = 0; a < mList.Count; a++) { - foreach (var value in GetList(false)) - { - if (!list.Contains(s)) - { - //閲嶆柊鎺掑簭A-Z - list.Add(s); - } - } - } - } - return RelationshipList(list, mList); - } - /// <summary> - /// 閲嶆柊鎺掑簭瀛楁瘝涓庢暟鎹叧绯� - /// </summary> - /// <param name="mList1">瀛楁瘝琛�</param> - /// <param name="mList2">鏄剧ず鏁版嵁琛�</param> - /// <returns></returns> - private List<string> RelationshipList(List<string> mList1, List<string> mList2) - { - var list = new List<string>(); - for (int i = 0; i < mList1.Count; i++) - { - var zimo = mList1[i]; - ///娣诲姞瀛楁瘝 - list.Add(zimo); - for (int j = 0; j < mList2.Count; j++) - { + var str = mList[a]; //鎻愬彇瀛楃涓茬涓�浣� - string str = mList2[j].Substring(0, 1); - var s = GetCharSpellCode(str); - //鍒ゆ柇杩斿洖瀛楁瘝涓庡綋鍓嶅瓧姣嶆槸鍚︾浉绛� - if (zimo == s) + string s = str.Substring(0, 1); + //杩斿洖瀛楃涓茬涓�浣嶉瀛楁瘝锛堝ぇ鍐欙級 + var a_z = GetCharSpellCode(s); + //鍒ゆ柇鏄惁鍚屽瓧姣� + if (zimu == a_z) { - ///娣诲姞鏁版嵁 - list.Add(mList2[j]); + //鍒ゆ柇鍒楄〃鏄惁瀛樺湪瀛楁瘝 + if (!list.Contains(zimu)) + { + //娣诲姞瀛楁瘝 + list.Add(zimu); + } + //娣诲姞棣栧瓧鍚屼竴涓瓧姣嶇殑鏁版嵁 + list.Add(str); } } - } - return list; } + /// <summary> /// 鑾峰彇A-Z瀛楁瘝鍒楄〃 /// </summary> /// <returns></returns> - private List<string> GetList(bool value=true) { + private List<string> GetList(bool value = true) + { var list = new List<string>(); - if (value) { + if (value) + { list.Add("#"); } for (int j = 65; j <= 90; j++) -- Gitblit v1.8.0