과 2 menu items
을 포함하여 Base Activity
이 있습니다. 시작시 에 이로드됩니다. 각로드는 특정 fragment
입니다. 조건 & 조건 메뉴 항목을 선택하면 뒤로 버튼을 누르면 단순히 죽이기 때문에 T & C fragment
&이로드됩니다.처음으로 조각을 닫으려면 뒤로 단추를 두 번 눌러야하는 이유는 무엇입니까?
그러나 About Us 메뉴 항목을 선택하면 About fragment
이로드되지만 BACK button
을 두 번 눌러서 삭제해야합니다. 왜 그런 일이 일어날 지 알아야합니까? AppBaseActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
fragmentManager = getSupportFragmentManager();
fragmentTransaction = fragmentManager.beginTransaction();
HomeFragment homeFragment = new HomeFragment();
fragmentTransaction.add(R.id.body_container, homeFragment, "");
fragmentTransaction.commit();
}
@Override
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
navigationView.getMenu().findItem(item.getItemId()).setChecked(true);
switch (item.getItemId()) {
case R.id.nav_terms :
fragmentTransaction = fragmentManager.beginTransaction();
TCFragment tcFragment = new TCFragment();
fragmentTransaction.replace(R.id.body_container, tcFragment, "");
fragmentTransaction.commit();
break;
case R.id.nav_about_us :
fragmentTransaction = fragmentManager.beginTransaction();
AboutUsFragment aboutUsFragment = new AboutUsFragment();
fragmentTransaction.replace(R.id.body_container, aboutUsFragment, "");
fragmentTransaction.commit();
break;
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
All fragments
에서 코드의
부분은 단순히만을 존경 XML을 팽창에 의해 onCreateView()
을 무시했다. fragments
에는 코드가 아직 작성되지 않았습니다.
를 사용하지 않고
onBackPressed()
를 사용하여로드 조각 대신 .replace의 .add 및 – Redman당신이 무시 않은 볼'onBackPressed()' –
그러나 그 다음 T & C 단편의 경우에 작동하는 이유는 무엇입니까? – VVB