Linjiajia
2023-12-29 590c1cff46b105d774271f950caa9f65523f05c1
app/src/main/java/com/application/zhangshi_app_android/ui/main/MainActivity.java
@@ -4,10 +4,10 @@
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.TypedValue;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
@@ -15,7 +15,6 @@
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;
@@ -27,23 +26,28 @@
import com.application.zhangshi_app_android.bean.GrowthExperienceInformationBean;
import com.application.zhangshi_app_android.bean.UpdateVersionBean;
import com.application.zhangshi_app_android.databinding.ActivityMainBinding;
import com.application.zhangshi_app_android.ui.DLBaseActivity;
import com.application.zhangshi_app_android.ui.dialog.UpdateDialog;
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.function.HomeFragment;
import com.application.zhangshi_app_android.ui.home.TreeFragment;
import com.application.zhangshi_app_android.ui.personal_center.PersonalCenterFragment;
import com.blankj.utilcode.util.AppUtils;
import com.blankj.utilcode.util.ToastUtils;
import com.google.android.material.navigation.NavigationBarView;
import java.io.Serializable;
/**
 * @author Ljj
 * @date 2023.3.15
 * @desc app主页
 */
public class MainActivity extends BaseActivity<ActivityMainBinding, MainViewModel> {
public class MainActivity extends DLBaseActivity<ActivityMainBinding, MainViewModel> {
    BaseVp2FragmentAdapter<BaseFragment> mPagerAdapter;
    @Override
    protected boolean isDrawerLayoutEnabled() {
        return false;
    }
    @Override
    public int getLayoutId() {
        return R.layout.activity_main;
@@ -56,13 +60,15 @@
    @Override
    public void initParam() {
    }
    @Override
    public void initView() {
        mPagerAdapter = new BaseVp2FragmentAdapter<>(this);
        mPagerAdapter.addFragment(HomeFragment.newInstance());
        mPagerAdapter.addFragment(FunctionFragment.newInstance());
        mPagerAdapter.addFragment(TreeFragment.newInstance());
        mPagerAdapter.addFragment(PersonalCenterFragment.newInstance());
        binding.mainVp.setAdapter(mPagerAdapter);
        binding.mainVp.registerOnPageChangeCallback(new ViewPager2.OnPageChangeCallback() {
@@ -83,7 +89,7 @@
                    case R.id.navigation_home:
                        binding.mainVp.setCurrentItem(0);
                        return true;
                    case R.id.navigation_function:
                    case R.id.navigation_tree:
                        binding.mainVp.setCurrentItem(1);
                        return true;
                    case R.id.navigation_personal_center:
@@ -95,6 +101,21 @@
                return false;
            }
        });
        Menu menu = binding.mainBnv.getMenu();
        // 获取当前主题中的菜单图标资源
        TypedValue typedValue1 = new TypedValue();
        getTheme().resolveAttribute(R.attr.menuIconHome, typedValue1, true);
        int icon1ResId = typedValue1.resourceId;
        TypedValue typedValue2 = new TypedValue();
        getTheme().resolveAttribute(R.attr.menuIconTree, typedValue2, true);
        int icon2ResId = typedValue2.resourceId;
        TypedValue typedValue3 = new TypedValue();
        getTheme().resolveAttribute(R.attr.menuIconUser, typedValue3, true);
        int icon3ResId = typedValue3.resourceId;
        // 设置菜单项图标
        menu.findItem(R.id.navigation_home).setIcon(icon1ResId);
        menu.findItem(R.id.navigation_tree).setIcon(icon2ResId);
        menu.findItem(R.id.navigation_personal_center).setIcon(icon3ResId);
    }
    @Override
@@ -130,6 +151,8 @@
                            .setUpdateLog(updateVersionBean.getContent())
                            // 下载 URL
                            .setDownloadUrl(updateVersionBean.getAppUrl())
                            // 文件 MD5
                            .setFileMd5(updateVersionBean.getMd5())
                            .show();
                }
            }
@@ -196,7 +219,7 @@
    private static final String INTENT_KEY_IN_FRAGMENT_CLASS = "fragmentClass";
    public static void start(Context context) {
        start(context, HomeFragment.class);
        start(context, TreeFragment.class);
    }
    public static void start(Context context, Class<? extends Fragment> fragmentClass) {