Как вы передаете данные между действиями в приложении для Android?
Передача данных между действиями в Android
Ответ 1
в вашей текущей деятельности, создайте намерение
Intent i = new Intent(getApplicationContext(), ActivityB.class);
i.putExtra(key, value);
startActivity(i);
а затем в другой активности извлеките эти значения.
Bundle extras = getIntent().getExtras();
if(extras !=null) {
String value = extras.getString(key);
}
Ответ 2
Использовать глобальный класс:
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;
}
}
Вы можете вызвать сеттеры и получатели этого класса из всех других классов. Сделайте это, вам нужно создать объект GlobalClass в каждом Actitity:
GlobalClass gc = (GlobalClass) getApplication();
Затем вы можете позвонить, например:
gc.getVitaminA()
Ответ 3
Поместите это в свою вторичную деятельность.
SharedPreferences preferences =getApplicationContext().getSharedPreferences("name", MainActivity.MODE_PRIVATE);
android.content.SharedPreferences.Editor editor = preferences.edit();
editor.putString("name", "Wally");
editor.commit();
Поместите это в свою MainActivity
SharedPreferences preferences = getApplicationContext().getSharedPreferences("name", MainActivity.MODE_PRIVATE);
if(preferences.contains("name")){
Toast.makeText(getApplicationContext(), preferences.getString("name", "null"), Toast.LENGTH_LONG).show();
}