package com.application.zhangshi_app_android.ui.personal_center;
|
|
import android.content.Intent;
|
import android.graphics.drawable.ColorDrawable;
|
import android.os.Bundle;
|
import android.view.View;
|
import android.view.ViewGroup;
|
import android.widget.PopupWindow;
|
|
import com.android.app_base.base.dialog.BaseDialog;
|
import com.android.app_base.base.dialog.UIDialog;
|
import com.android.app_base.base.view.BaseFragment;
|
import com.android.app_base.manager.AppManager;
|
import com.android.app_base.manager.UserManager;
|
import com.android.app_base.utils.ScreenSizeUtils;
|
import com.android.app_base.utils.rxbus.MessageEvent;
|
import com.android.app_base.utils.rxbus.RxBus;
|
import com.application.zhangshi_app_android.BR;
|
import com.application.zhangshi_app_android.R;
|
import com.application.zhangshi_app_android.bean.GrowthExperienceInformationBean;
|
import com.application.zhangshi_app_android.databinding.FragmentPersonalCenterBinding;
|
import com.application.zhangshi_app_android.ui.DLBaseFragment;
|
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 io.reactivex.Observer;
|
import io.reactivex.functions.Consumer;
|
|
/**
|
* @author Ljj
|
* @date 2023.03.15. 20:19
|
* @desc 个人中心 Fragment
|
*/
|
public class PersonalCenterFragment extends DLBaseFragment<FragmentPersonalCenterBinding,PersonalCenterFragmentViewModel> {
|
private PopupWindow popupWindow;
|
|
public PersonalCenterFragment() {
|
}
|
|
public static PersonalCenterFragment newInstance() {
|
PersonalCenterFragment fragment = new PersonalCenterFragment();
|
Bundle args = new Bundle();
|
fragment.setArguments(args);
|
return fragment;
|
}
|
@Override
|
protected int getLayoutId() {
|
return R.layout.fragment_personal_center;
|
}
|
|
@Override
|
protected int getVariableId() {
|
return BR.viewModel;
|
}
|
|
@Override
|
protected void initParam() {
|
|
}
|
|
@Override
|
protected void initView() {
|
View view = View.inflate(getSelfActivity(),R.layout.pop_operate_person_center,null);
|
popupWindow = initPopUpWindow(view);
|
setOnClickListener(
|
view.findViewById(R.id.tv_basic_info),
|
view.findViewById(R.id.tv_change_login_bg)
|
);
|
|
binding.ivOperate.setOnClickListener(v -> {
|
popupWindow.showAsDropDown(binding.ivOperate,-ScreenSizeUtils.dip2px(getSelfActivity(),85) +binding.ivOperate.getWidth(),0);
|
});
|
|
binding.tvLoginOut.setOnClickListener(new View.OnClickListener() {
|
@Override
|
public void onClick(View v) {
|
new UIDialog.Builder(getSelfActivity())
|
.setTitle("提示")
|
.setContent("确定要退出登录吗?")
|
.setConfirm("确定")
|
.setCancel("取消")
|
.setListener(new UIDialog.OnListener() {
|
@Override
|
public void onConfirm(BaseDialog dialog) {
|
UserManager.getInstance().loginOut();
|
AppManager.getAppManager().startActivity(new Intent(getSelfActivity(), LoginActivity.class));
|
getSelfActivity().finish();
|
}
|
})
|
.show();
|
|
}
|
});
|
}
|
|
@Override
|
protected void initData() {
|
viewModel.getInfo();
|
}
|
|
@Override
|
public void onResume() {
|
super.onResume();
|
initData();
|
}
|
|
@Override
|
protected void initLiveDataObserve() {
|
|
}
|
|
@Override
|
public void onClick(View v) {
|
super.onClick(v);
|
int id = v.getId();
|
if (id == R.id.tv_basic_info){
|
popupWindow.dismiss();
|
AppManager.getAppManager().startActivity(new Intent(getSelfActivity(),BasicInfoActivity.class)
|
.putExtra("bean",viewModel.getInfoLiveData().getValue()));
|
}else if (id == R.id.tv_change_login_bg){
|
popupWindow.dismiss();
|
AppManager.getAppManager().startActivity(LoginBgChangeActivity.class);
|
}
|
}
|
|
@Override
|
protected boolean isStatusBarImmersionEnabled() {
|
return true;
|
}
|
}
|