我有三个活动说A B C,从活动A我去B和搜索城市,从活动B到活动c,在我保存我放入异步任务的东西 这将保存在Activit A列表视图中,问题是在我按回按钮后保存在列表中我再次看到活动A没有保存我之前保存的名称
private class Savecity extends AsyncTask<city, String, String> {
@Override
protected void onPostExecute(String result) {
super.onPostExecute(result);
if(result != null && result.equals("sucess")){
Intent intent = new Intent(activity, cityActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(intent);}
}
@Override
protected String doInBackground(city... arg0) {
try {
((CityPreferences) activity.getApplication()).createcity(arg0[0]);
return "sucess";
} catch (Exception e) {
Log.e(TAG, "", e);
return "fail";
}
}
答案 0 :(得分:18)
您可以在AndroidManifest.xml文件中实现此功能,只需在您想要的android:noHistory="true"
中添加<activity>
属性
希望这会有所帮助..
答案 1 :(得分:7)
实际上在您的活动C
中,当您尝试重新调用活动A
时,您需要做的就是清除活动堆栈。例如:
Intent i = new Intent(getBaseContext(), Activity_A.class);
i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(i);