sexta-feira, 20 de fevereiro de 2015

Android básico: Usando o onSaveInstanceState

  Em algumas situações o sistema pode encerrar sua activity, seja por falta de recursos ou por mudança de orientação da tela. Nesses casos, o método onSaveInstanceState é chamado para permitir ao programador salvar algum dado da activity. O método é chamado com uma referencia a um bundle, nele é que se deve salvar o(s) dado(s). Quando a activity for recriada esse bundle é passado para o onCreate e onRestoreInstanceState.

  Segue abaixo um esquema básico:

Salva o(s) dados(s):




Recupera o(s) dado(s), aqui:




Ou aqui:



  Os dados da tela são salvos e restaurados automaticamente, por isso é fundamental chamar o método no super.
  Lembrar que esse procedimento só deve ser usado para dados temporários (transitórios), pois são salvos em memória, correndo o risco de serem descartados.
  Em caso de dados importantes, ou na dúvida, salve-os de maneira persistente.

Abraços



Curso Android online

Este curso oferecido pelo Coursera é bem interessante:


Programação de aplicativos para dispositivos móveis com sistema Android: Part 1
Programação de aplicativos para dispositivos móveis com sistema Android: Part 2
O inglês do professor Adam Porter é bem fácil, compreensível.
É bom ter um nível intermediário de conhecimentos de programação Java e, apesar de não ser um pré-requisito, é interessante ter um nível introdutório em Android. Vai aproveitar mais.
Assisti todas as aulas da parte 1 e estou acompanhando a parte 2. 
Gostei, recomendo.
Abraços



terça-feira, 17 de fevereiro de 2015

Android básico: retornando dados de uma activity para outra.

 Um fato que acontece com frequencia é a necessidade de capturar o retorno de uma outra activity. Para isso temos que chamar a activity com um método específico, o startActivityForResult.
 Por exemplo, a ActivityA invoca a ActivityB com startActivityForResult e aguarda o retorno em onActivityResult. Na ActivityB o retorno é passado via uma Intent, posicionado via setResult. 

 Abaixo segue o esquema básico:

 Na activity chamadora, ActivityA:



 Na activity chamada, ActivityB:




 Abraços