在Android中的活动之间传递数据
如何在Android应用程序的活动之间传递数据?
在你目前的活动中,创build一个意图
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); }
使用全球课程:
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; } }
你可以从所有其他类中调用这个类的setters和getters。 这样做,你需要在每个实体中创build一个GlobalClass对象:
GlobalClass gc = (GlobalClass) getApplication();
那么你可以打电话举例说明:
gc.getVitaminA()
把这个放在你的次要活动中
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(); }