package com.capstone.foodify.Activity; import android.annotation.SuppressLint; import android.os.Bundle; import android.view.MenuItem; import androidx.appcompat.app.AppCompatDelegate; import androidx.core.splashscreen.SplashScreen; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; import androidx.viewpager2.widget.ViewPager2; import com.capstone.foodify.R; import com.capstone.foodify.ViewPagerAdapter; import com.google.android.material.bottomnavigation.BottomNavigationView; import com.google.android.material.navigation.NavigationBarView; public class MainActivity extends AppCompatActivity { ViewPager2 viewPager2; ViewPagerAdapter viewPagerAdapter; BottomNavigationView bottomNavigationView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); SplashScreen.installSplashScreen(this); AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO); setContentView(R.layout.activity_main); initComponent(); bottomNavigation(); } private void initComponent() { bottomNavigationView = findViewById(R.id.bottom_nav); viewPager2 = findViewById(R.id.viewPager); } private void bottomNavigation() { viewPagerAdapter = new ViewPagerAdapter(this); viewPager2.setAdapter(viewPagerAdapter); viewPager2.setUserInputEnabled(false); bottomNavigationView.setOnItemSelectedListener(new NavigationBarView.OnItemSelectedListener() { @SuppressLint("NonConstantResourceId") @Override public boolean onNavigationItemSelected(@NonNull MenuItem item) { int id = item.getItemId(); switch (id) { case R.id.activity_home: viewPager2.setCurrentItem(0); break; case R.id.activity_search: viewPager2.setCurrentItem(1); break; case R.id.activity_basket: viewPager2.setCurrentItem(2); break; case R.id.activity_favorite: viewPager2.setCurrentItem(3); break; case R.id.activity_profile: viewPager2.setCurrentItem(4); break; } return false; } }); viewPager2.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() { @Override public void onPageSelected(int position) { switch (position){ case 0: bottomNavigationView.getMenu().findItem(R.id.activity_home).setChecked(true); break; case 1: bottomNavigationView.getMenu().findItem(R.id.activity_search).setChecked(true); break; case 2: bottomNavigationView.getMenu().findItem(R.id.activity_basket).setChecked(true); break; case 3: bottomNavigationView.getMenu().findItem(R.id.activity_favorite).setChecked(true); break; case 4: bottomNavigationView.getMenu().findItem(R.id.activity_profile).setChecked(true); break; } super.onPageSelected(position); } }); } }