nilupeng
2022-08-12 7cd5e812882e999443220e9c71103b3e3c476c71
app/src/main/java/com/runt/open/mvvm/ui/main/mine/MineFragment.java
@@ -3,10 +3,13 @@
import android.app.Activity;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.util.Log;
import android.view.View;
import android.widget.TextView;
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import com.bumptech.glide.Glide;
import com.bumptech.glide.request.RequestOptions;
import com.google.gson.Gson;
import com.luck.picture.lib.PictureSelector;
import com.luck.picture.lib.config.PictureConfig;
import com.luck.picture.lib.config.PictureMimeType;
@@ -14,17 +17,19 @@
import com.runt.open.mvvm.BuildConfig;
import com.runt.open.mvvm.R;
import com.runt.open.mvvm.base.fragments.BaseFragment;
import com.runt.open.mvvm.data.HttpApiResult;
import com.runt.open.mvvm.data.Results;
import com.runt.open.mvvm.config.Configuration;
import com.runt.open.mvvm.databinding.FragmentMineBinding;
import com.runt.open.mvvm.listener.ResPonse;
import com.runt.open.mvvm.retrofit.observable.HttpObserver;
import com.runt.open.mvvm.ui.coin.WithDrawActivity;
import com.runt.open.mvvm.ui.coin.CoinSettingActivity;
import com.runt.open.mvvm.ui.loadpage.PageActivitys;
import com.runt.open.mvvm.ui.login.UserBean;
import com.runt.open.mvvm.ui.sign.SignInActivity;
import com.runt.open.mvvm.util.GlideEngine;
import com.runt.open.mvvm.util.MyLog;
import okhttp3.ResponseBody;
import retrofit2.Call;
import retrofit2.Callback;
import retrofit2.Response;
import sakura.bottommenulibrary.bottompopfragmentmenu.BottomMenuFragment;
import sakura.bottommenulibrary.bottompopfragmentmenu.MenuItem;
import java.io.File;
import java.util.List;
@@ -38,13 +43,25 @@
public class MineFragment extends BaseFragment<FragmentMineBinding,MineViewModel> implements View.OnClickListener {
    private final  String TAG = "MineFragment";
    ActivityResultLauncher<Intent> launcher = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), result -> {
        refreshUi();
    });
    @Override
    public void initViews() {
        mViewModel.getUserBean();
        UserBean.onUpdate.observe(this, userBean -> {
            mActivity.putStringProjectPrefrence(Configuration.KEY_USERINFO, new Gson().toJson(userBean));
            refreshUi();
        });
    }
    @Override
    public void loadData() {
        setOnClickListener(this,R.id.lin_sign,R.id.lin_coin,R.id.img,R.id.txt_name);
        refreshUi();
    }
    public void refreshUi(){
        if(UserBean.getUser() != null){
            RequestOptions options = new RequestOptions()
                    .placeholder(R.mipmap.default_head)//图片加载出来前,显示的图片
@@ -55,14 +72,13 @@
            mBinding.txtCoin.setText(UserBean.getUser().getCoin()+"");
            mBinding.txtSigns.setText(UserBean.getUser().getSign()+"");
            mBinding.linGroup.setVisibility(View.VISIBLE);
        }else{
            Glide.with(getContext()).load(R.mipmap.default_head).into(mBinding.img);
            mBinding.txtName.setText("未登录");
            mBinding.linGroup.setVisibility(View.GONE);
        }
        setOnClickListener(this,R.id.lin_sign,R.id.lin_coin,R.id.img,R.id.txt_name);
    }
    @Override
    public void onClick(View view) {
@@ -71,16 +87,16 @@
                openAlthum();
                break;
            case R.id.txt_name://名称
                mViewModel.updateName(new HttpObserver() {
                mViewModel.updateName(new HttpObserver<String>() {
                    @Override
                    protected void onSuccess(Object data) {
                        UserBean.getUser().setUsername(data.toString());
                        mBinding.txtName.setText(data.toString());
                    protected void onSuccess(String data) {
                        UserBean.getUser().setUsername(data);
                        mBinding.txtName.setText(data);
                    }
                });
                break;
           /* case R.id.lin_coin://金币
            case R.id.lin_coin://金币
                new BottomMenuFragment(getActivity())
                        .addMenuItems(new MenuItem("查看记录"))
                        .addMenuItems(new MenuItem("申请提现"))
@@ -88,7 +104,7 @@
                            @Override
                            public void onItemClick(TextView menu_item, int position) {
                                if(position == 0){
                                    startActivity(new Intent(mActivity, CoinRecordActivity.class) );
                                    startActivity(new Intent(mActivity, PageActivitys.CoinRecordActivity.class) );
                                }else {
                                    if(mActivity.isNull(UserBean.getUser().getAlipay())){
                                        mActivity.showDialog("设置支付宝", "您还没有设置支付宝账号", "设置", "取消", new ResPonse() {
@@ -105,7 +121,7 @@
                                            }
                                        });
                                    }else{
                                        startActivityForResult(new Intent(mActivity, WithDrawActivity.class),REQUEST_CODE_WITHDRAW );
                                        launcher.launch(new Intent(mActivity, WithDrawActivity.class) );
                                    }
                                }
                            }
@@ -113,8 +129,8 @@
                        .show();
                break;
            case R.id.lin_sign://签到
                startActivityForResult(new Intent(getContext(), SignInActivity.class),REQUEST_CODE_SIGN);
                break;*/
                launcher.launch(new Intent(getContext(), SignInActivity.class));
                break;
        }
    }