Linjiajia
2024-01-29 b17b9aa59bae6d03055f14d937821655dfaffa1f
app/src/main/java/com/application/zhangshi_app_android/ui/personal_center/PersonalCenterFragment.java
@@ -1,5 +1,6 @@
package com.application.zhangshi_app_android.ui.personal_center;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
@@ -19,6 +20,7 @@
import androidx.fragment.app.Fragment;
import com.android.app_base.base.dialog.BaseDialog;
import com.android.app_base.base.dialog.TipsDialog;
import com.android.app_base.base.dialog.UIDialog;
import com.android.app_base.base.dialog.WaitDialog;
import com.android.app_base.base.view.BaseFragment;
@@ -29,6 +31,7 @@
import com.android.app_base.utils.Utils;
import com.android.app_base.utils.rxbus.MessageEvent;
import com.android.app_base.utils.rxbus.RxBus;
import com.android.app_base.widget.SwitchButton;
import com.application.zhangshi_app_android.BR;
import com.application.zhangshi_app_android.R;
import com.application.zhangshi_app_android.bean.AnnualHealthStatusBean;
@@ -38,6 +41,7 @@
import com.application.zhangshi_app_android.ui.dialog.PetOwnerInfoDialog;
import com.application.zhangshi_app_android.ui.function.PetMemoActivity;
import com.application.zhangshi_app_android.ui.login.LoginActivity;
import com.application.zhangshi_app_android.ui.main.MainActivity;
import com.bumptech.glide.Glide;
import com.bumptech.glide.request.target.CustomTarget;
import com.bumptech.glide.request.transition.Transition;
@@ -70,6 +74,7 @@
public class PersonalCenterFragment extends DLBaseFragment<FragmentPersonalCenterBinding,PersonalCenterFragmentViewModel> {
    private PopupWindow popupWindow;
    private BaseDialog mWaitDialog;
    public PersonalCenterFragment() {
    }
@@ -128,6 +133,36 @@
            }
        });
        binding.ivTakePhoto.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                PictureSelector.create(getSelfActivity())
                        .openGallery(SelectMimeType.ofImage())
                        .setImageEngine(GlideEngine.createGlideEngine())
                        .setCropEngine(new ImageFileCropEngine())// 设置裁剪引擎
                        .isMaxSelectEnabledMask(true)// 达到最大选择数是否开启禁选蒙层
                        .setMaxSelectNum(1)
                        .forResult(new OnResultCallbackListener<LocalMedia>() {
                            @Override
                            public void onResult(ArrayList<LocalMedia> result) {
                                if (result.size() == 0) return;
                                for (LocalMedia media : result) {
                                    if (media.isCut()){
                                        viewModel.updateInfo(media.getCutPath());
                                    }else {
                                        viewModel.updateInfo(media.getRealPath());
                                    }
                                }
                            }
                            @Override
                            public void onCancel() {
                            }
                        });
            }
        });
        binding.ivHead.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
@@ -158,6 +193,34 @@
                        });
            }
        });
        binding.switchBtn.setChecked(UserManager.getInstance().getNightModeState());
        binding.switchBtn.setOnCheckedChangeListener(new SwitchButton.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(SwitchButton button, boolean checked) {
                if (checked == UserManager.getInstance().getNightModeState()) return;
                new UIDialog.Builder(getContext())
                        .setTitle("提示")
                        .setContent("切换模式需要重启应用才能生效,是否重启?")
                        .setConfirm("确定")
                        .setCancel("取消")
                        .setListener(new UIDialog.OnListener() {
                            @Override
                            public void onConfirm(BaseDialog dialog) {
                                UserManager.getInstance().saveNightModeState(checked);
                                AppManager.getAppManager().restartApp(getContext());
                            }
                            @Override
                            public void onCancel(BaseDialog dialog) {
                                UIDialog.OnListener.super.onCancel(dialog);
                                binding.switchBtn.setChecked(!checked);
                            }
                        })
                        .setCancelable(false)
                        .show();
            }
        });
    }
    @Override