我使用的意图是这样开始的活动:在单击后退按钮活动正在重新启动本身
Bundle bundle = new Bundle();
bundle.putParcelableArrayList("datacover",arrayList);
Intent intent = new Intent(TroubleShootActivity.this,SearchResultsActivity.class);
intent.putExtra("bundle",bundle);
startActivity(intent);
我不是整理活动,但仍当我在一个活动上单击后退按钮,它不返回到以前的活动,而是重新启动自己。
代码的其他活动:下面的代码
public class SearchResultsActivity extends AppCompatActivity implements InnerDetailsFragment.OntroubleshootinneritemsListener,InnerDetailsFragment.OnHandleBack,CompleteDetailsFragment.OnHandleBack {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_search_results);
if(!getResources().getBoolean(R.bool.twoPaneMode)){
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
}else{
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);
}
Bundle bundle=getIntent().getBundleExtra("bundle");
FragmentManager fragmentManager = getSupportFragmentManager();
Fragment Inner = new InnerDetailsFragment();
bundle.putString("val", "search");
Inner.setArguments(bundle);
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction().replace(R.id.activity_search_results,Inner);
fragmentTransaction.commit();
}
@Override
public void onBackClick(String inner) {
super.onBackPressed();
}
@Override
public void ontroubleinneritemelected(int position, String heading, CoverageData coverageData) {
Bundle bundle = new Bundle();
bundle.putParcelable("coverage",coverageData);
FragmentManager fragmentManager = getSupportFragmentManager();
Fragment Detailsf= new CompleteDetailsFragment();
Detailsf.setArguments(bundle);
FragmentTransaction ft = fragmentManager.beginTransaction().replace(R.id.activity_search_results,Detailsf);
ft.addToBackStack("completedetails");
ft.commit();
}
@Override
public void onBackPressed() {
super.onBackPressed();
}
}
使用finish()代替super.onBackPressed(); –
你能分享InnerDetailsFragment吗?或者这3个听众。 – JavadKhan
根本不覆盖后退按钮。不知道你从中获得什么 – Doomsknight