using Shared;
|
using HDL_ON.UI.CSS;
|
using System;
|
using System.Collections.Generic;
|
using System.Text;
|
|
namespace HDL_ON.Stan
|
{
|
/// <summary>
|
/// 电池百分比控件(高为25)
|
/// </summary>
|
public class BatteryPersentControl : NormalFrameLayout
|
{
|
#region ■ 变量声明___________________________
|
|
/// <summary>
|
/// 电池百分比显示的值
|
/// </summary>
|
private NormalViewControl btnBatteryView = null;
|
/// <summary>
|
/// 进度条
|
/// </summary>
|
private NormalViewControl btnProgress = null;
|
/// <summary>
|
/// 图标控件
|
/// </summary>
|
private IconViewControl btnIcon = null;
|
|
#endregion
|
|
#region ■ 初始化_____________________________
|
|
/// <summary>
|
/// 电池百分比控件(高为25)
|
/// </summary>
|
public BatteryPersentControl()
|
{
|
//以图片的计算方法计算高度
|
this.Height = this.GetPictrueRealSize(25);
|
this.Width = this.GetPictrueRealSize(24) + Application.GetRealWidth(30 + 4);
|
}
|
|
/// <summary>
|
/// 初始化控件
|
/// </summary>
|
/// <param name="showPersent">是否在右边显示百分比</param>
|
public void InitControl(bool showPersent = true)
|
{
|
this.btnIcon = new IconViewControl(24);
|
btnIcon.UnSelectedImagePath = "Public/BatteryEnough.png";
|
this.AddChidren(btnIcon);
|
|
//电池百分比
|
if (showPersent == true)
|
{
|
this.btnBatteryView = new NormalViewControl(30, 16, true);
|
btnBatteryView.X = btnIcon.Right + Application.GetRealWidth(4);
|
btnBatteryView.Y = btnIcon.Y + (btnIcon.Height - Application.GetRealHeight(16)) / 2;
|
btnBatteryView.TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel;
|
btnBatteryView.TextColor = CSS_Color.PromptingColor1;
|
this.AddChidren(btnBatteryView);
|
}
|
|
//进度条控件
|
this.btnProgress = new NormalViewControl(this.GetPictrueRealSize(15), this.GetPictrueRealSize(8), false);
|
btnProgress.X = this.GetPictrueRealSize(4);
|
btnProgress.Gravity = Gravity.CenterVertical;
|
btnProgress.BackgroundColor = CSS_Color.PromptingColor1;
|
this.AddChidren(btnProgress);
|
}
|
|
#endregion
|
|
#region ■ 一般方法___________________________
|
|
/// <summary>
|
/// 百分比值
|
/// </summary>
|
/// <param name="i_value"></param>
|
public void SetValue(decimal i_value)
|
{
|
int myWidth = (int)((i_value / 100) * this.GetPictrueRealSize(15));
|
if (this.btnBatteryView != null)
|
{
|
this.btnBatteryView.Text = i_value + "%";
|
}
|
|
this.btnProgress.Width = myWidth;
|
if (i_value <= 20)
|
{
|
//变红色
|
this.btnProgress.BackgroundColor = 0xfff62f48;
|
this.btnIcon.UnSelectedImagePath = "Public/BatteryNot.png";
|
}
|
else
|
{
|
//变灰色
|
this.btnProgress.BackgroundColor = CSS_Color.PromptingColor1;
|
this.btnIcon.UnSelectedImagePath = "Public/BatteryEnough.png";
|
}
|
}
|
|
#endregion
|
}
|
}
|