using Shared.Common; using Shared.Phone.UserCenter; using System; using System.Collections.Generic; using System.Text; namespace Shared.Phone.Category { /// /// 选择本地场景图片的界面 /// public class SelectLocalSceneImageForm : EditorCommonForm { #region ■ 变量声明___________________________ /// /// 结束选择的事件(图片名字) /// public Action FinishSelectEvent = null; #endregion #region ■ 初始化_____________________________ /// /// 画面显示(底层会固定调用此方法,借以完成画面创建) /// public void ShowForm() { //初始化中部信息 this.InitMiddleFrame(); //设置头部信息 base.SetTitleText(Language.StringByID(R.MyInternationalizationString.LocalPicture)); } /// /// 初始化中部信息 /// private void InitMiddleFrame() { //清空bodyFrame this.ClearBodyFrame(); //列表控件 var listView = new VerticalListControl(); listView.Height = bodyFrameLayout.Height; bodyFrameLayout.AddChidren(listView); int picHeight = this.GetPictrueRealSize(220); int picWidth = this.GetPictrueRealSize(463); int leftRightSpace = this.GetPictrueRealSize(40); int space = listView.Width - leftRightSpace * 2 - picWidth * 2; //一共14张图片 FrameLayout frameRow = null; for (int i = 0; i < 14; i++) { //图片 var btnIcon = new ImageView(); btnIcon.Y = Application.GetRealHeight(58); btnIcon.Width = picWidth; btnIcon.Height = picHeight; btnIcon.ImagePath = $"SceneIcon/{i}.png"; btnIcon.Radius = (uint)Application.GetRealHeight(17); if (i % 2 == 0) { btnIcon.X = leftRightSpace; //行控件 frameRow = new FrameLayout(); frameRow.Height = picHeight + Application.GetRealHeight(58); listView.AddChidren(frameRow); } else { btnIcon.X = leftRightSpace + picWidth + space; } frameRow.AddChidren(btnIcon); //图片遮罩 var btnZhezhao = new FrameLayout(); btnZhezhao.Width = btnIcon.Width; btnZhezhao.Height = btnIcon.Height; btnZhezhao.Y = btnIcon.Y; btnZhezhao.X = btnIcon.X; btnZhezhao.Radius = (uint)Application.GetRealHeight(17); btnZhezhao.BackgroundColor = UserCenterColor.Current.PictrueZhezhaoColor; frameRow.AddChidren(btnZhezhao); btnZhezhao.SetViewShadow(true); btnZhezhao.MouseUpEventHandler += (sender, e) => { //结束选择的事件 this.FinishSelectEvent?.Invoke(btnIcon.ImagePath); this.CloseForm(); }; } //底部间距 var frameTemp = new FrameLayout(); frameTemp.Height = Application.GetRealHeight(58); listView.AddChidren(frameTemp); } #endregion #region ■ 界面关闭___________________________ /// /// 界面关闭 /// public override void CloseFormBefore() { this.FinishSelectEvent = null; base.CloseFormBefore(); } #endregion } }