Skip to content

Instantly share code, notes, and snippets.

@devjaime
Created April 19, 2019 04:15
Show Gist options
  • Select an option

  • Save devjaime/e7c6eb8d14bef77948b0a8bd5ac7513a to your computer and use it in GitHub Desktop.

Select an option

Save devjaime/e7c6eb8d14bef77948b0a8bd5ac7513a to your computer and use it in GitHub Desktop.
viewmodelbattery
using Xamarin.Essentials;
namespace Bateria.ViewModel
{
public class BatteryViewModel : BaseViewModel
{
public BatteryViewModel()
{
}
public double Level => Battery.ChargeLevel;
public BatteryState State => Battery.State;
public BatteryPowerSource PowerSource => Battery.PowerSource;
public EnergySaverStatus EnergySaverStatus => Battery.EnergySaverStatus;
public override void OnAppearing()
{
base.OnAppearing();
Battery.BatteryInfoChanged += OnBatteryInfoChanged;
Battery.EnergySaverStatusChanged += OnEnergySaverStatusChanged;
}
public override void OnDisappearing()
{
Battery.BatteryInfoChanged -= OnBatteryInfoChanged;
Battery.EnergySaverStatusChanged -= OnEnergySaverStatusChanged;
base.OnDisappearing();
}
void OnEnergySaverStatusChanged(object sender, EnergySaverStatusChangedEventArgs e)
{
OnPropertyChanged(nameof(EnergySaverStatus));
}
void OnBatteryInfoChanged(object sender, BatteryInfoChangedEventArgs e)
{
OnPropertyChanged(nameof(Level));
OnPropertyChanged(nameof(State));
OnPropertyChanged(nameof(PowerSource));
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment