HomeFragment.java 3.51 KB
package com.hjx.parent.fragment;

import android.content.Intent;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import androidx.annotation.Nullable;

import com.hjq.permissions.OnPermissionCallback;
import com.hjq.permissions.Permission;
import com.hjq.permissions.XXPermissions;
import com.hjx.parent.R;
import com.prws.common.base.BaseFragment;
import com.prws.common.utils.SharedPreferencesUtil;
import com.uuzuche.lib_zxing.activity.CaptureActivity;
import com.uuzuche.lib_zxing.activity.CodeUtils;

import java.util.List;

public class HomeFragment extends BaseFragment {
    @Override
    protected int getLayoutRes() {
        return R.layout.fragment_home;
    }

    ImageView iv_sapmiao;
    TextView tv_name;
    @Override
    protected void initDatas() {
        super.initDatas();
        iv_sapmiao = mRootView.findViewById(R.id.iv_sapmiao);
        tv_name = mRootView.findViewById(R.id.tv_name);
        iv_sapmiao.setOnClickListener(view -> {

            if (!XXPermissions.isGranted(getActivity(), Permission.CAMERA)){
                XXPermissions.with(getActivity())
                        // 申请多个权限
                        .permission(Permission.CAMERA)
                        .request(new OnPermissionCallback() {
                            @Override
                            public void onGranted(List<String> permissions, boolean all) {
                                if (all){
                                    //开启扫码界面
                                    startQRView();


                                }else {
                                    Toast.makeText(getActivity(),"需要相机权限",Toast.LENGTH_SHORT).show();
                                }
                            }

                            @Override
                            public void onDenied(List<String> permissions, boolean never) {
                                XXPermissions.startPermissionActivity(getActivity(), permissions);
                            }
                        });




            }else {
                startQRView();
            }


        });

        String role = (String) SharedPreferencesUtil.getData("role","");
        String userId = (String) SharedPreferencesUtil.getData("userId","");
        String token = (String) SharedPreferencesUtil.getData("token","");
        String phone = (String) SharedPreferencesUtil.getData("phone","");
        if (role != null && role.length() > 0)
            tv_name.setText(role);

    }

    public void startQRView(){


        startActivityForResult(new Intent(getActivity(), CaptureActivity.class),101);


    }

    @Override
    public void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == 101){
            if (null != data) {
                Bundle bundle = data.getExtras();
                if (bundle == null) {
                    return;
                }
                if (bundle.getInt(CodeUtils.RESULT_TYPE) == CodeUtils.RESULT_SUCCESS) {
                    String result = bundle.getString(CodeUtils.RESULT_STRING);
                    Toast.makeText(getActivity(), "解析结果:" + result, Toast.LENGTH_LONG).show();
                } else if (bundle.getInt(CodeUtils.RESULT_TYPE) == CodeUtils.RESULT_FAILED) {
                    Toast.makeText(getActivity(), "解析二维码失败", Toast.LENGTH_LONG).show();
                }
            }
        }


    }
}