FalkeNr1
Neues Mitglied
- 3
Hi,
mein Plan ist es eigentlich einfach, durch das Anklicken der unterschiedlichen Einträge im NavigationView unterschiedliche Fragmente zu öffnen.
Um das zu erreichen, habe ich meinen vorhandenen Code mit Hilfe des folgendem Tutorials ausgebaut:
Fragment Navigation Drawer | CodePath Android Cliffnotes
Nun funktioniert das Ganze leider nicht. Es bleibt dauerhaft das Layout der MainActivity sichtbar. Dieses soll allerdings durch die Layouts der Fragmente ersetzt werden.
Hier meine Codeschnipsel:
Würde mich wirklich freuen, wenn jemand meinen Fehler findet...
Vielen Dank schon mal im Voraus!
MfG
Falke
mein Plan ist es eigentlich einfach, durch das Anklicken der unterschiedlichen Einträge im NavigationView unterschiedliche Fragmente zu öffnen.
Um das zu erreichen, habe ich meinen vorhandenen Code mit Hilfe des folgendem Tutorials ausgebaut:
Fragment Navigation Drawer | CodePath Android Cliffnotes
Nun funktioniert das Ganze leider nicht. Es bleibt dauerhaft das Layout der MainActivity sichtbar. Dieses soll allerdings durch die Layouts der Fragmente ersetzt werden.
Hier meine Codeschnipsel:
Code:
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="start">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<include
layout="@layout/app_bar_main"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<FrameLayout
android:id="@+id/frameLayout"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
<android.support.design.widget.NavigationView
android:id="@+id/nav_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
android:fitsSystemWindows="true"
app:headerLayout="@layout/nav_header_main"
app:menu="@menu/activity_main_drawer" />
</android.support.v4.widget.DrawerLayout>
Code:
@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
int id = item.getItemId();
FragmentManager manager = getSupportFragmentManager();
if (id == R.id.nav_numbers) {
Fragment fragment = null;
Class fragmentClass = NumbersFragment.class;
try {
fragment = (Fragment) fragmentClass.newInstance();
} catch(Exception e) {
e.printStackTrace();
}
manager.beginTransaction().replace(R.id.frameLayout, fragment).commit();
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
Code:
public class NumbersFragment extends Fragment {
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_numbers, container, false);
}
}
Würde mich wirklich freuen, wenn jemand meinen Fehler findet...
Vielen Dank schon mal im Voraus!
MfG
Falke