Preferencias compartidas en Android

Preferencias compartidas (SharedPreference) en Android

PREFERENCIAS COMPARTIDAS

La clase SharedPreference es una clase que permite almacenar datos denominados primitivos, generalmente datos de configuración de la aplicación, en un archivo xml en la memoria del dispositivo en lugar de una base de datos y que de la misma forma que la base de datos al cerrar la aplicación los datos se mantienen almacenados. Datos primitivos: byte,short,int,long,float,double,boolean,char.

Estas preferencias dispone de tres modos de almacenamiento:  privado (private), legible (readable) y editable (writeable).

Privado: Solo la aplicación tiene acceso a ellas.

Legible: Una aplicación externa tiene solamente acceso de lectura.

Editable: Una aplicación externa tiene acceso de lectura y escritura.

A continuación un ejemplo básico de SharedPreferences en el que se almacenan los datos introducidos y se leen esos datos.

activity_main.xml

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="//schemas.android.com/apk/res/android"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. android:orientation="vertical"
  6. >
  7. <EditText
  8. android:id="@+id/editT"
  9. android:layout_width="wrap_content"
  10. android:layout_height="wrap_content"
  11. android:text="Nombre"
  12. />
  13. <Button
  14. android:id="@+id/boton"
  15. android:layout_width="match_parent"
  16. android:layout_height="wrap_content"
  17. android:text="Guardar"/>
  18. </LinearLayout>

MainActivity.java

  1. package xip.midominio.com.sharedpreference;
  2. import android.content.Context;
  3. import android.content.SharedPreferences;
  4. import android.support.v7.app.AppCompatActivity;
  5. import android.os.Bundle;
  6. import android.view.View;
  7. import android.widget.Button;
  8. import android.widget.EditText;
  9. import android.view.View.OnClickListener;
  10. public class MainActivity extends AppCompatActivity implements OnClickListener{
  11. EditText editT;
  12. Button boton;
  13. @Override
  14. protected void onCreate(Bundle savedInstanceState) {
  15. super.onCreate(savedInstanceState);
  16. setContentView(R.layout.activity_main);
  17. editT = (EditText)findViewById(R.id.editT);
  18. boton = (Button) findViewById(R.id.boton);
  19. SharedPreferences pref = getSharedPreferences("nombre",Context.MODE_PRIVATE);
  20. editT.setText(pref.getString("nombre",""));
  21. boton.setOnClickListener(this);
  22. }
  23. public void onClick(View v){
  24. switch(v.getId()){
  25. case R.id.boton:
  26. String guardar = editT.getText().toString();
  27. SharedPreferences preferencias = getSharedPreferences("nombre", Context.MODE_PRIVATE);
  28. SharedPreferences.Editor editor = preferencias.edit();
  29. editor.putString("nombre",guardar);
  30. editor.commit();
  31. finish();
  32. break;
  33. default:
  34. break;
  35. }
  36. }
  37. }


Comentarios: 0

Para poder comentar es necesario iniciar sesión



Este dominio utiliza cookies de terceros para crear estadísticas y publicidad personalizada. Si continúa navegando está aceptando su uso