package com.appassit.widget.battery;
import android.content.Context;
import android.os.BatteryManager;
import android.util.AttributeSet;
import android.widget.FrameLayout;
import android.widget.TextView;
import com.appassit.R;
public class BatteryChangeView extends FrameLayout implements ILife {
TextView tvBattery;
private int status = -1;
private int level = -1;
private int scale = -1;
public BatteryChangeView(Context context, AttributeSet attrs) {
super(context, attrs);
}
protected void onFinishInflate() {
super.onFinishInflate();
findViews();
setValues();
}
private void findViews() {
tvBattery = (TextView) findViewById(R.id.tv_battery);
}
private void setValues() {
reSetValues();
}
private void reSetValues() {
onBattery(status, level, scale);
}
public void onResume() {
reSetValues();
}
public void onUpdate() {
reSetValues();
}
public void onBattery(int status, int level, int scale) {
this.status = status;
this.level = level;
this.scale = scale;
if (status == BatteryManager.BATTERY_STATUS_CHARGING) {
tvBattery.setText("正在充电:" + getBatteryPrecent(level, scale) + "%");
} else {
tvBattery.setText("剩余电量:" + getBatteryPrecent(level, scale) + "%");
}
if (getBatteryPrecent(level, scale) <= 20) {
tvBattery.setTextColor(getResources().getColor(R.color.cpb_red));
}
}
private int getBatteryPrecent(int level, int scale) {
int b = (int) (level * 100.0 / scale);
return b;
}
@Override
public void onPause() {
// TODO Auto-generated method stub
}
}