O X do Xamarin Forms — “Puxando” para atualizar uma lista

Thiago Bertuzzi
Jul 25, 2017 · 2 min read

Fala Galera,

Estou começando uma serie de postagens com alguns conceitos básicos de Xamarin Forms que podem ajudar quem esta começando. Alguns desses conceitos são facilmente encontrados em Inglês , mas português sempre tem menos material.

Pois bem são conceitos simples, mas que eu espero que ajude alguém que esta começando. Como fui ajudado diversas vezes .

Mas chega de papo de fila de banco,vamos começar.

O controle ListView do Xamarin forms tem a capacidade de permitir que o usuário arraste do topo para baixo para acionar um comando de atualização. Sim é uma comando de atualização, porque ele apenas chama um evento e você pode implementar o que quiser nesse comando, incluindo não atualizar o ListView.

Implementação:

Para utilizar o comando de atualização, é necessário implementar 3 propriedades do seu listview:

<ListView ItemsSource="{Binding MinhaLista}"
IsPullToRefreshEnabled="True"
RefreshCommand="{Binding AtualizarCommand}"
IsRefreshing="{Binding Atualizando}" />

Após habilitar o IsPullToRefreshEnabled com True , você precisa implementar as outras duas na sua ViewModel:

private bool _atualizando = false;
public bool Atualizando {
get { return _atualizando; }
set {
SetProperty(ref _atualizando, value);
}
}
public ICommand AtualizarCommand
{
get {
return new Command(async () =>
{
Atualizando= true;

await AtualizarDados();

Atualizando= false;
});
}
}

Simples não ?

Agora toda vez que você arrastar do topo para baixo uma animação de “Carregando” sera exibida:

Algumas considerações :

  • SetProperty é uma implementação dos conceitos do MVVM,aqui deve ser substituído pelo que você estiver utilizando.
  • AtualizarDados() deve ser substituído pelo seu método que carrega a listview.

Espero ter ajudado!

Aquele Abraço!

Thiago Bertuzzi

Written by

Microsoft MVP,Gamer, Desenvolvedor e apaixonado por tecnologia!

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade