แอปพลิเคชันของฉันมีลิ้นชักการนำทางที่ประกอบด้วยคอนเทนเนอร์ส่วนย่อยหลักที่เปลี่ยนแปลงตามส่วนอื่นๆ เมื่อฉันต้องการเปลี่ยนหน้า หากเปลี่ยนเป็นแนวนอนเมื่อฉันอยู่ในหน้าอื่น แอปพลิเคชันจะกลับไปที่หน้าแรก (คอนเทนเนอร์แฟรกเมนต์) และจะเหมือนกันหากฉันเปลี่ยนจากแนวนอนเป็นแนวตั้ง ฉันจะแก้ไขปัญหานี้ได้อย่างไร? ฉันคิดว่าฉันต้องเปลี่ยนแปลงอะไรบางอย่างในกิจกรรมหลัก แต่ฉันไม่รู้จะทำอย่างไรจริงๆ
Java ของฉันเป็นแบบนี้จริงๆ
public class MainActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener {
NavigationView navigationView = null;
MainFragment fragment = new MainFragment();
android.support.v4.app.FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.fragment_container,fragment);
fragmentTransaction.commit();
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId();
if (id == R.id.nav_home) {
MainFragment fragment = new MainFragment();
android.support.v4.app.FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, fragment);
fragmentTransaction.commit();
} else if (id == R.id.nav_breed) {
// Handle the camera action
BreedFragment fragment = new BreedFragment();
android.support.v4.app.FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, fragment);
fragmentTransaction.commit();
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
}