From 9a4b76398009cf76c508d61f7e48fb6f5cb7ac2d Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期二, 21 七月 2020 09:46:53 +0800 Subject: [PATCH] 请合并最新多功能面板代码 --- ZigbeeApp/Shared/Phone/MainPage/SelectLocalDeviceImageForm.cs | 133 ++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 133 insertions(+), 0 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/MainPage/SelectLocalDeviceImageForm.cs b/ZigbeeApp/Shared/Phone/MainPage/SelectLocalDeviceImageForm.cs new file mode 100755 index 0000000..04156b3 --- /dev/null +++ b/ZigbeeApp/Shared/Phone/MainPage/SelectLocalDeviceImageForm.cs @@ -0,0 +1,133 @@ +锘縰sing Shared.Phone.UserCenter; +using System; +using System.Collections.Generic; +using System.Text; + +namespace Shared.Phone.MainPage +{ + /// <summary> + /// 閫夋嫨鏈湴璁惧鍥剧墖鐨勭晫闈� + /// </summary> + public class SelectLocalDeviceImageForm : EditorCommonForm + { + #region 鈻� 鍙橀噺澹版槑___________________________ + + /// <summary> + /// 缁撴潫閫夋嫨鐨勪簨浠�(鍥剧墖鍚嶅瓧) + /// </summary> + public Action<string> FinishSelectEvent = null; + /// <summary> + /// 褰撳墠閫夋嫨鐨勫浘鏍囨帶浠� + /// </summary> + private PicViewControl selectContr = null; + + #endregion + + #region 鈻� 鍒濆鍖朹____________________________ + + /// <summary> + /// 鐢婚潰鏄剧ず(搴曞眰浼氬浐瀹氳皟鐢ㄦ鏂规硶锛屽�熶互瀹屾垚鐢婚潰鍒涘缓) + /// </summary> + public void ShowForm() + { + //鍒濆鍖栦腑閮ㄤ俊鎭� + this.InitMiddleFrame(); + //璁剧疆澶撮儴淇℃伅 + base.SetTitleText(Language.StringByID(R.MyInternationalizationString.SelectIcon)); + } + + /// <summary> + /// 鍒濆鍖栦腑閮ㄤ俊鎭� + /// </summary> + private void InitMiddleFrame() + { + //娓呯┖bodyFrame + this.ClearBodyFrame(); + + //鍒楄〃鎺т欢 + var listView = new VerticalListControl(); + listView.Height = bodyFrameLayout.Height; + bodyFrameLayout.AddChidren(listView); + + int space = this.GetPictrueRealSize(46); + int backWidth = (listView.Width - ControlCommonResourse.XXLeft * 2 - space * 3) / 4; + //闃叉璇樊锛屽垎涓ゆ璁$畻 + int iconWidth = backWidth - this.GetPictrueRealSize(43) - this.GetPictrueRealSize(43); + + //涓�鍏�28寮犲浘鐗� + FrameLayout frameRow = null; + for (int i = 0; i < 28; i++) + { + //4涓竴缁� + if (i % 4 == 0) + { + //琛屾帶浠� + frameRow = new FrameLayout(); + frameRow.Height = backWidth + Application.GetRealHeight(58); + listView.AddChidren(frameRow); + } + //鑳屾櫙 + var frameBack = new FrameLayoutStatuControl(); + frameBack.UseClickStatu = false; + frameBack.Height = backWidth; + frameBack.Width = backWidth; + frameBack.Radius = (uint)backWidth / 2; + frameBack.BackgroundColor = UserCenterColor.Current.White; + frameBack.X = ControlCommonResourse.XXLeft + (i % 4) * (backWidth + space); + frameBack.Y = Application.GetRealHeight(58); + frameRow.AddChidren(frameBack); + + //鍥剧墖 + var btnIcon = new PicViewControl(iconWidth, iconWidth, false); + btnIcon.UnSelectedImagePath = $"FunctionIcon/{i + 1}Icon.png"; + btnIcon.SelectedImagePath = $"FunctionIcon/{i + 1}IconSelected.png"; + btnIcon.Gravity = Gravity.Center; + frameBack.AddChidren(btnIcon, ChidrenBindMode.BindEvent); + + frameBack.ButtonClickEvent += (sender, e) => + { + btnIcon.IsSelected = !btnIcon.IsSelected; + if (this.selectContr != null && this.selectContr.UnSelectedImagePath != btnIcon.UnSelectedImagePath) + { + //鍙栨秷鎺夊墠涓�涓� + this.selectContr.IsSelected = false; + } + this.selectContr = btnIcon; + }; + } + + //纭畾 + var btnSave = new BottomClickButton(); + btnSave.TextID = R.MyInternationalizationString.uConfirm1; + bodyFrameLayout.AddChidren(btnSave); + btnSave.ButtonClickEvent += (sender, e) => + { + if (this.selectContr != null && this.selectContr.IsSelected == true) + { + //璋冪敤鍥炶皟鍑芥暟 + this.FinishSelectEvent?.Invoke(this.selectContr.UnSelectedImagePath); + } + this.CloseForm(); + }; + + //璋冩暣妗屽竷楂樺害 + listView.AdjustRealHeightByBottomButton(Application.GetRealHeight(23)); + } + + #endregion + + #region 鈻� 鐣岄潰鍏抽棴___________________________ + + /// <summary> + /// 鐣岄潰鍏抽棴 + /// </summary> + public override void CloseFormBefore() + { + this.FinishSelectEvent = null; + + base.CloseFormBefore(); + } + + #endregion + } +} -- Gitblit v1.8.0