public boolean onNavigationItemSelected(MenuItem item) { // // Handle navigation view item clicks here. int id = item.getItemId();
Fragment fragment = null;
String title = getString(R.string.app_name);
if (id == R.id.nav_camera) {
// // Handle the camera action
fragment = new HomeFragment();
title = "Homes";
} } else if (id == R.id.nav_gallery) {
fragment = new SettingFragment();
title = "Settings";
} } else if (id == R.id.nav_slideshow) {
} } else if (id == R.id.nav_manage) {
} } else if (id == R.id.nav_share) {
} } else if (id == R.id.nav_send) {
}
if (fragment != null) {
FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
ft.replace(R.id.content_fragment_layout, fragment);
ft.commit();
}
// // set the toolbar title
if (getSupportActionBar() != null) {
getSupportActionBar().setTitle(title);
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
}
This code was implemented by Mainactivity and I wanted to move on to the fragment that was created when I pressed the item. By the way
if (id == R.id.nav_camera) { // // Handle the camera action fragment = new HomeFragment(); title = "Homes"; } } else if (id == R.id.nav_gallery) ``{ fragment = new SettingFragment(); title = "Settings"; new HomeFragment() and SettingFragment() in this part; I don't know why there's a red line on it.
android fragment
Experience tells us what's going on the table Fragment referenced by FragmentActivity and HomeFragment/SettingFragment are presumed to be different.
If you check the imported part of the code you uploaded, I think we need to check if it's android.support.v4.app.fragment Also for HomeFragment/SettingFragment content, it would be good to check if the imported part is Android.support.v4.app.fragment.
When you use Fragment, You must use a unified combination of android.support.v4.app.fragment and android.app.fragment to use it without errors.
© 2024 OneMinuteCode. All rights reserved.