所以我有2个java文件, AddActivity,MapActivity。 我想在添加活动中输入详细信息,然后选择位置"按钮, 一旦"选择位置"按钮被选中MapActivity启动,当我选择"提交"按钮, 我被带回AddActivity,它应该包含之前输入的详细信息,但它没有任何想法?
private EditText edit_event,edit_time,edit_location,edit_date,edit_descript,edit_lat,edit_lon;
选择位置按钮以从AddActivity移动到MapActivity
btn_locate.setOnClickListener(new View.OnClickListener()
{
public void onClick(View view) {
Intent intent = new Intent(AddActivity.this, MapActivity.class);
startActivity(intent);
}
});
提交按钮以从MapActivity移动到AddActvity
public void onClick_Submit(View v) {
Intent newIntent = new Intent(this.getApplicationContext(), AddActivity.class);
newIntent.putExtras(bundle);
startActivity(newIntent);
}
在我提交关于添加活动的上一个文本并转到地图活动并返回添加活动后,编辑文本消失了,不幸的是我需要10个代表来发布图像。
答案 0 :(得分:0)
可以随时销毁和重新创建活动。因此,如果要缓存信息,则必须为此做一些额外的工作。
最简单的方法是在活动上使用静态变量,这将使其在应用程序的生命周期内保存。
另一种方法是使用SharedPreferences
,即使应用程序终止并重新启动,它也会存储信息。
另一种方法是使用SQLiteOpenHelper
的本地数据库。
当您的活动出现在前面时,会调用OnStart()
。这是重新加载缓存信息的地方。
当您的活动进入后台时,会调用OnStop()
。这是缓存信息的地方。
有关活动生命周期的更多信息:http://developer.android.com/training/basics/activity-lifecycle/index.html
有关Android中存储选项的更多信息:http://developer.android.com/guide/topics/data/data-storage.html