How to create a variable that stores a value value even if it restarts or changes the application scene, I do not know would be a database or if there is something simple
How to create a variable that stores a value value even if it restarts or changes the application scene, I do not know would be a database or if there is something simple
Here is an example of using SharedPreferences
:
/**
* Classe encapsula as funcionalidades de leitura e gravação no SharedPreferences
*/
public class SharedPreferencesController {
/**
* Constantes utilizadas para salvar / resgatar os dados
*/
private String DADOS = "DADOS";
private String CAMPO = "CAMPO";
/**
* Grava as informações do objeto em um SharedPreferences.
*/
public void salvar(final String campo, final Context mContext){
if(null == campo) return;
//Cria uma instancia do SharedPreferences
SharedPreferences prefs = mContext.getSharedPreferences(DADOS, Context.MODE_PRIVATE);
// Criamos um instancia do editor, para salvamos os dados
SharedPreferences.Editor editor = prefs.edit();
editor.putString(CAMPO, campo);
// Para que as informações sejam atualizadas
editor.commit();
}
/**
* Coleta as informações do objeto em um SharedPreferences.
*/
public String ler(final Context mContext){
if(null == mContext) return null;
//Cria uma instancia do SharedPreferences
final SharedPreferences prefs = mContext.getSharedPreferences(DADOS, Context.MODE_PRIVATE);
// se for nulo, n˜ao temos mais o que fazer, e retornamos nulo!
if(null == prefs) return null;
/**
* Coleta os valores!
* Para carregar um valor passamos o nome da Propriedade e um valor padrão.
* Se não haver dados para esta propriedade, ele irá retornar o valor padão
*/
final String campo = prefs.getString(CAMPO, null);
return campo;
}
}