using System; using System.Collections.Generic; using System.Text; namespace Shared.Phone.UserCenter { /// /// 场景图片的控件 /// public class ScenePictrueControl : FrameRowControl { #region ■ 变量声明___________________________ /// /// 场景图片控件 /// public ImageView btnScenePic = null; /// /// 场景名字控件 /// public NormalViewControl btnSceneName = null; /// /// 场景对象 /// public Common.SceneUI scene = null; /// /// 收藏触发的事件 true:添加收藏 false:取消收藏 /// public Action CollectEvent = null; /// /// 选择控件(调用AddSelectControl()函数初始化) /// private IconViewControl btnSelect = null; private bool m_IsSelected = false; /// /// 选择状态 /// public bool IsSelected { get { return m_IsSelected; } set { m_IsSelected = value; if (btnSelect != null) { btnSelect.IsSelected = m_IsSelected; } } } #endregion #region ■ 初始化_____________________________ /// /// 场景图片的控件(拥有桌布) /// public ScenePictrueControl() { this.UseClickStatu = false; this.Height = Application.GetRealHeight(440); } /// /// 初始化控件 /// /// 场景控件 public void InitControl(Common.SceneUI sceneUI) { this.scene = sceneUI; //场景图片 this.btnScenePic = new ImageView(); btnScenePic.X = Application.GetRealWidth(179); btnScenePic.Width = Application.GetRealWidth(844); btnScenePic.Height = Application.GetRealHeight(397); if (sceneUI.IconPathType == 0) { btnScenePic.ImagePath = sceneUI.IconPath; } else if (Common.Global.IsExistsByHomeId(sceneUI.IconPath) == true) { btnScenePic.ImageBytes = Common.Global.ReadFileByHomeId(sceneUI.IconPath); } btnScenePic.Radius = (uint)Application.GetRealHeight(17); this.AddChidren(btnScenePic, ChidrenBindMode.NotBind); //阴影 var btnShadow = new PicViewControl(btnScenePic.Width + Application.GetRealWidth(14 * 2), btnScenePic.Height + Application.GetRealHeight(43), false); btnShadow.X = btnScenePic.X - Application.GetRealWidth(14); btnShadow.UnSelectedImagePath = "Scene/SceneShadow.png"; this.AddChidren(btnShadow, ChidrenBindMode.BindEvent); this.btnSceneName = new NormalViewControl(251, 282, true); btnSceneName.IsMoreLines = true; btnSceneName.X = ControlCommonResourse.XXLeft; btnSceneName.Y = Application.GetRealHeight(58); btnSceneName.BackgroundColor = 0xd6333333; btnSceneName.RadiusEx = 17; btnSceneName.Text = sceneUI.Name; btnSceneName.TextSize = 15; btnSceneName.TextColor = UserCenterColor.Current.White; btnSceneName.TextAlignment = TextAlignment.Center; this.AddChidren(btnSceneName, ChidrenBindMode.NotBind); } #endregion #region ■ 选择控件___________________________ /// /// 添加选择控件 /// public void AddSelectControl() { this.btnSelect = new IconViewControl(58); btnSelect.UnSelectedImagePath = "Item/ItemUnSelected.png"; btnSelect.SelectedImagePath = "Item/ItemSelected.png"; btnSelect.X = Application.GetRealWidth(887); btnSelect.Y = Application.GetRealHeight(35); this.AddChidren(btnSelect, ChidrenBindMode.BindEvent); } #endregion #region ■ 收藏控件___________________________ /// /// 添加收藏控件(CollectEvent是收藏的回调事件) /// public void AddCollectionControl() { var btnCollection = new IconViewControl(65); btnCollection.X = Application.GetRealWidth(81); btnCollection.Y = Application.GetRealHeight(81); btnCollection.UnSelectedImagePath = "Item/Collection.png"; btnCollection.SelectedImagePath = "Item/CollectionSelected.png"; if (HdlRoomLogic.Current.IsCollectInRoom(scene) == true) { btnCollection.IsSelected = true; } this.AddChidren(btnCollection, ChidrenBindMode.NotBind); btnCollection.ButtonClickEvent += (sender, e) => { btnCollection.IsSelected = !btnCollection.IsSelected; if (btnCollection.IsSelected == true) { HdlSceneLogic.Current.AddLoveScene(scene); } else { HdlSceneLogic.Current.DeleteLoveScene(scene); } this.CollectEvent?.Invoke(btnCollection.IsSelected); }; } #endregion #region ■ 控件摧毁___________________________ /// /// 控件摧毁 /// public override void RemoveFromParent() { this.CollectEvent = null; base.RemoveFromParent(); } #endregion } }