using System; using System.Collections.Generic; using System.Text; namespace Shared.Phone.UserCenter { /// <summary> /// ä½äºŽå·¦ä¸‹è§’çš„å•击控件 /// </summary> public class BottomLeftClickButton : FrameLayoutStatuControl { #region â– å˜é‡å£°æ˜Ž___________________________ #if Android /// <summary> /// 按钮(没åˆå§‹åŒ–之å‰,它为null) /// </summary> private NormalViewControl btnButton = null; /// <summary> /// 顶部圆角 /// </summary> private NormalViewControl btnTopTemp = null; /// <summary> /// 左下角圆角 /// </summary> private NormalViewControl btnBomTemp = null; #endif #if iOS /// <summary> /// 按钮(没åˆå§‹åŒ–之å‰,它为null) /// </summary> private NormalClickButton btnButton = null; #endif #endregion #region â– åˆå§‹åŒ–_____________________________ /// <summary> /// ä½äºŽå·¦ä¸‹è§’çš„å•击控件 /// </summary> /// <param name="i_width">宽度,真实值</param> /// <param name="i_height">高度,真实值</param> /// <param name="i_radius">圆角度(åªå¯¹å®‰å“有效)</param> public BottomLeftClickButton(int i_width, int i_height, int i_radius = 17) { this.Height = i_height; this.Width = i_width; this.Gravity = Gravity.BottomLeft; #if Android this.RadiusEx = i_radius; #endif } /// <summary> /// åˆå§‹åŒ–控件 /// </summary> /// <param name="i_text">文本信æ¯</param> public void InitControl(string i_text) { uint i_backColor = 0xfff5f6fa; #if Android this.BackgroundColor = i_backColor; //把上圆角覆盖为方角 this.btnTopTemp = new NormalViewControl(this.Width, Application.GetRealHeight(40), false); btnTopTemp.BackgroundColor = i_backColor; this.AddChidren(btnTopTemp, ChidrenBindMode.BindEvent); //把å³ä¸‹åœ†è§’覆盖为方角 this.btnBomTemp = new NormalViewControl(this.Width / 2, Application.GetRealHeight(40), false); btnBomTemp.BackgroundColor = i_backColor; btnBomTemp.Gravity = Gravity.BottomRight; this.AddChidren(btnBomTemp, ChidrenBindMode.BindEvent); //å–æ¶ˆæŒ‰é’® this.btnButton = new NormalViewControl(this.Width - Application.GetRealWidth(10), Application.GetRealHeight(60), false); btnButton.Gravity = Gravity.Center; btnButton.TextColor = UserCenterColor.Current.TextGrayColor1; btnButton.Text = i_text; btnButton.TextAlignment = TextAlignment.Center; btnButton.BackgroundColor = i_backColor; this.AddChidren(btnButton, ChidrenBindMode.BindEvent); //é‡å†™æŽ§ä»¶ç‚¹å‡»çŠ¶æ€ this.SelectStatuEvent += (statu) => { if (statu == true) { this.BackgroundColor = UserCenterColor.Current.ButtonClickStatuColor; btnTopTemp.BackgroundColor = UserCenterColor.Current.ButtonClickStatuColor; btnBomTemp.BackgroundColor = UserCenterColor.Current.ButtonClickStatuColor; btnButton.BackgroundColor = UserCenterColor.Current.ButtonClickStatuColor; } else { this.BackgroundColor = i_backColor; btnTopTemp.BackgroundColor = i_backColor; btnBomTemp.BackgroundColor = i_backColor; btnButton.BackgroundColor = i_backColor; } }; #endif #if iOS //å–æ¶ˆæŒ‰é’® this.btnButton = new NormalClickButton(this.Width, this.Height, false); btnButton.Gravity = Gravity.BottomLeft; btnButton.TextColor = UserCenterColor.Current.TextGrayColor1; btnButton.Text = i_text; btnButton.TextAlignment = TextAlignment.Center; btnButton.BackgroundColor = i_backColor; btnButton.oldBackgroundColor = i_backColor; this.AddChidren(btnButton, ChidrenBindMode.BindEvent); #endif } #endregion #region ■一般方法___________________________ /// <summary> /// è®¾ç½®æŒ‰é’®çš„æ–‡æœ¬ä¿¡æ¯ /// </summary> /// <param name="txtValue"></param> public void SetButtonText(string txtValue) { if (this.btnButton != null) { this.btnButton.Text = txtValue; } } #endregion } }