package com.duqing.missions;
|
|
import androidx.viewpager2.widget.ViewPager2;
|
|
import com.duqing.missions.base.BaseActivity;
|
import com.duqing.missions.base.FragmentAdapter;
|
import com.duqing.missions.databinding.ActivityMainBinding;
|
import com.duqing.missions.ui.main.hall.HallFragment;
|
import com.duqing.missions.ui.main.home.HomeFragment;
|
import com.duqing.missions.ui.main.mine.MineFragment;
|
|
public class MainActivity extends BaseActivity<ActivityMainBinding> {
|
|
|
@Override
|
public void initViews() {
|
setStatusBarBgColor(R.color.red);
|
setStatusBarTextColor(false);
|
binding.navView.setOnItemSelectedListener(item -> {
|
for(int i = 0 ; i < binding.navView.getMenu().size() ; i ++){
|
if(item.getItemId() == binding.navView.getMenu().getItem(i).getItemId()){
|
binding.viewPager2.setCurrentItem(i);
|
return true;
|
}
|
}
|
return false;
|
});
|
final FragmentAdapter fragmentAdapter = new FragmentAdapter(this);
|
fragmentAdapter.addFragment(new HomeFragment());
|
fragmentAdapter.addFragment(new HallFragment());
|
fragmentAdapter.addFragment(new MineFragment());
|
//设置当前可见Item左右可见page数,次范围内不会被销毁
|
//禁用预加载
|
binding.viewPager2.setOffscreenPageLimit(ViewPager2.OFFSCREEN_PAGE_LIMIT_DEFAULT);
|
binding.viewPager2.setAdapter(fragmentAdapter);
|
binding.viewPager2.setCurrentItem(0);
|
binding.viewPager2.setUserInputEnabled(false); //true:滑动,false:禁止滑动
|
binding.viewPager2.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() {
|
@Override
|
public void onPageSelected(int position) {
|
binding.navView.getMenu().getItem(position).setChecked(true);
|
}
|
});
|
binding.viewPager2.setCurrentItem(0);//设置默认第
|
}
|
|
|
}
|