package com.application.zhangshi_app_android.ui.main;
|
|
|
import android.view.MenuItem;
|
|
import androidx.annotation.NonNull;
|
import androidx.viewpager2.widget.ViewPager2;
|
|
import com.android.app_base.base.adapter.BaseVp2FragmentAdapter;
|
import com.android.app_base.base.view.BaseActivity;
|
import com.android.app_base.base.view.BaseFragment;
|
import com.android.app_base.helper.DoubleClickHelper;
|
import com.android.app_base.manager.AppManager;
|
import com.application.zhangshi_app_android.BR;
|
import com.application.zhangshi_app_android.R;
|
import com.application.zhangshi_app_android.databinding.ActivityMainBinding;
|
import com.application.zhangshi_app_android.ui.function.FunctionFragment;
|
import com.application.zhangshi_app_android.ui.home.HomeFragment;
|
import com.application.zhangshi_app_android.ui.personal_center.PersonalCenterFragment;
|
import com.blankj.utilcode.util.ToastUtils;
|
import com.google.android.material.navigation.NavigationBarView;
|
|
/**
|
* @author Ljj
|
* @date 2023.3.15
|
* @desc app主页
|
*/
|
public class MainActivity extends BaseActivity<ActivityMainBinding, MainViewModel> {
|
@Override
|
public int getLayoutId() {
|
return R.layout.activity_main;
|
}
|
|
@Override
|
public int getVariableId() {
|
return BR.viewModel;
|
}
|
|
@Override
|
public void initParam() {
|
}
|
|
@Override
|
public void initView() {
|
BaseVp2FragmentAdapter<BaseFragment> mPagerAdapter = new BaseVp2FragmentAdapter<>(this);
|
mPagerAdapter.addFragment(HomeFragment.newInstance());
|
mPagerAdapter.addFragment(FunctionFragment.newInstance());
|
mPagerAdapter.addFragment(PersonalCenterFragment.newInstance());
|
binding.mainVp.setAdapter(mPagerAdapter);
|
binding.mainVp.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() {
|
@Override
|
public void onPageSelected(int position) {
|
binding.mainBnv.setSelectedItemId(binding.mainBnv.getMenu().getItem(position).getItemId());
|
super.onPageSelected(position);
|
}
|
});
|
binding.mainVp.setUserInputEnabled(false);
|
|
// 不使用图标默认变色
|
binding.mainBnv.setItemIconTintList(null);
|
binding.mainBnv.setOnItemSelectedListener(new NavigationBarView.OnItemSelectedListener() {
|
@Override
|
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
|
switch (item.getItemId()) {
|
case R.id.navigation_home:
|
binding.mainVp.setCurrentItem(0);
|
return true;
|
case R.id.navigation_function:
|
binding.mainVp.setCurrentItem(1);
|
return true;
|
case R.id.navigation_personal_center:
|
binding.mainVp.setCurrentItem(2);
|
return true;
|
default:
|
break;
|
}
|
return false;
|
}
|
});
|
}
|
|
@Override
|
public void initData() {
|
|
}
|
|
@Override
|
public void initLiveDataObserve() {
|
|
}
|
|
@Override
|
protected void onDestroy() {
|
binding.mainVp.setAdapter(null);
|
binding.mainBnv.setOnItemSelectedListener(null);
|
super.onDestroy();
|
}
|
|
@Override
|
public void onBackPressed() {
|
if (DoubleClickHelper.isOnDoubleClick()) {
|
moveTaskToBack(false);
|
// 进行内存优化,销毁掉所有的界面
|
AppManager.getAppManager().finishAllActivity();
|
} else {
|
ToastUtils.showShort("再按一次退出");
|
}
|
}
|
}
|