Pasar datos entre actividades en Android

¿Cómo pasas datos entre actividades en una aplicación de Android?

en tu actividad actual, crea una intención

Intent i = new Intent(getApplicationContext(), ActivityB.class); i.putExtra(key, value); startActivity(i); 

luego en la otra actividad, recupera esos valores.

 Bundle extras = getIntent().getExtras(); if(extras !=null) { String value = extras.getString(key); } 

Usa una clase global:

 public class GlobalClass extends Application { private float vitamin_a; public float getVitaminA() { return vitamin_a; } public void setVitaminA(float vitamin_a) { this.vitamin_a = vitamin_a; } } 

Puede llamar a los instaladores y captadores de esta clase de todas las demás clases. Haga eso, necesita hacer un objeto GlobalClass en cada acto:

 GlobalClass gc = (GlobalClass) getApplication(); 

Entonces puedes llamar por ejemplo:

 gc.getVitaminA() 

Pon esto en tu actividad secundaria

 SharedPreferences preferences =getApplicationContext().getSharedPreferences("name", MainActivity.MODE_PRIVATE); android.content.SharedPreferences.Editor editor = preferences.edit(); editor.putString("name", "Wally"); editor.commit(); 

Pon esto en tu actividad principal

 SharedPreferences preferences = getApplicationContext().getSharedPreferences("name", MainActivity.MODE_PRIVATE); if(preferences.contains("name")){ Toast.makeText(getApplicationContext(), preferences.getString("name", "null"), Toast.LENGTH_LONG).show(); }