diff --git a/app/src/main/java/com/a1/nextlocation/MainActivity.java b/app/src/main/java/com/a1/nextlocation/MainActivity.java index ee7fc67..ea457cf 100644 --- a/app/src/main/java/com/a1/nextlocation/MainActivity.java +++ b/app/src/main/java/com/a1/nextlocation/MainActivity.java @@ -1,13 +1,21 @@ package com.a1.nextlocation; +import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentTransaction; import android.os.Bundle; +import android.view.MenuItem; import com.a1.nextlocation.R; +import com.a1.nextlocation.fragments.HomeFragment; +import com.a1.nextlocation.fragments.RouteFragment; +import com.a1.nextlocation.fragments.SettingsFragment; +import com.a1.nextlocation.fragments.StatisticFragment; +import com.google.android.material.bottomnavigation.BottomNavigationView; public class MainActivity extends AppCompatActivity { - /** * onCreate method that creates the main activity * @param savedInstanceState the saved instance state of the app @@ -16,5 +24,33 @@ public class MainActivity extends AppCompatActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); + + BottomNavigationView bottomNav = findViewById(R.id.navbar); + bottomNav.setOnNavigationItemSelectedListener(navListener); + + getSupportFragmentManager().beginTransaction().replace(R.id.fragment_layout, new HomeFragment()).commit(); } + + + private BottomNavigationView.OnNavigationItemSelectedListener navListener = item -> { + Fragment selectedFragment = null; + + switch (item.getItemId()) { + case R.id.locations: + selectedFragment = new HomeFragment(); + break; + case R.id.routes: + selectedFragment = new RouteFragment(); + break; + case R.id.statistics: + selectedFragment = new StatisticFragment(); + break; + case R.id.settings: + selectedFragment = new SettingsFragment(); + break; + } + + getSupportFragmentManager().beginTransaction().replace(R.id.fragment_layout, selectedFragment).commit(); + return true; + }; } \ No newline at end of file diff --git a/app/src/main/res/drawable/ic_home.xml b/app/src/main/res/drawable/ic_home.xml new file mode 100644 index 0000000..3a4c7da --- /dev/null +++ b/app/src/main/res/drawable/ic_home.xml @@ -0,0 +1,10 @@ + + + diff --git a/app/src/main/res/drawable/ic_placeholder.xml b/app/src/main/res/drawable/ic_placeholder.xml new file mode 100644 index 0000000..9a2e721 --- /dev/null +++ b/app/src/main/res/drawable/ic_placeholder.xml @@ -0,0 +1,10 @@ + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 0d171d6..2acb5fa 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -16,7 +16,7 @@ app:layout_constraintEnd_toEndOf="parent" /> - + + \ No newline at end of file diff --git a/app/src/main/res/menu/navmenu.xml b/app/src/main/res/menu/navmenu.xml index eb1895a..8029947 100644 --- a/app/src/main/res/menu/navmenu.xml +++ b/app/src/main/res/menu/navmenu.xml @@ -4,21 +4,25 @@ \ No newline at end of file