package com.hjx.parent.fragment; import android.content.Intent; import android.os.Bundle; import android.text.TextUtils; import android.view.LayoutInflater; import android.view.View; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import android.widget.Toast; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import com.bumptech.glide.Glide; import com.bumptech.glide.load.resource.bitmap.RoundedCorners; import com.bumptech.glide.request.RequestOptions; import com.chad.library.adapter.base.BaseQuickAdapter; import com.chad.library.adapter.base.BaseViewHolder; import com.google.gson.Gson; import com.hjq.permissions.OnPermissionCallback; import com.hjq.permissions.Permission; import com.hjq.permissions.XXPermissions; import com.hjx.parent.ChooseActivity; import com.hjx.parent.QRActivity; import com.hjx.parent.R; import com.hjx.parent.bean.StudentBean; import com.prws.common.base.BaseFragment; import com.prws.common.bean.ResponseResult; import com.prws.common.bean.ScheduleBean; import com.prws.common.bean.Video; import com.prws.common.net.NetWorks; import com.prws.common.utils.ScreenUtils; import com.prws.common.utils.SharedPreferencesUtil; import com.uuzuche.lib_zxing.activity.CaptureActivity; import com.uuzuche.lib_zxing.activity.CodeUtils; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.List; import butterknife.BindView; import butterknife.OnClick; import io.reactivex.Observer; import io.reactivex.disposables.Disposable; public class HomeFragment extends BaseFragment { @Override protected int getLayoutRes() { return R.layout.fragment_home; } ImageView iv_sapmiao; TextView tv_name; StudentBean studentBean; ImageView iv_2; @BindView(R.id.recycle) RecyclerView recyclerView; @BindView(R.id.tv_empty) TextView tv_empty; @BindView(R.id.iv_empty) ImageView iv_empty; @Override protected void initDatas() { super.initDatas(); iv_2 = mRootView.findViewById(R.id.iv_2); 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 permissions, boolean all) { if (all) { //开启扫码界面 startQRView(); } else { Toast.makeText(getActivity(), "需要相机权限", Toast.LENGTH_SHORT).show(); } } @Override public void onDenied(List permissions, boolean never) { XXPermissions.startPermissionActivity(getActivity(), permissions); } }); } else { startQRView(); } }); } @Override public void onResume() { super.onResume(); String student = (String) SharedPreferencesUtil.getData("student", ""); try { studentBean = new Gson().fromJson(student, StudentBean.class); tv_name.setText(studentBean.getNickName()); if (TextUtils.isEmpty(studentBean.getPhoto())) { iv_2.setImageResource(studentBean.getGender() == 0 ? R.mipmap.ic_avatar_male : R.mipmap.ic_avatar_female); } else { RoundedCorners roundedCorners = new RoundedCorners(ScreenUtils.dpToPx(getContext(), 20)); RequestOptions options = RequestOptions.bitmapTransform(roundedCorners); Glide.with(getActivity()).load(studentBean.getPhoto()).apply(options).into(iv_2); } getWeekPlan(studentBean.getStuId()); } catch (Exception e) { } } public void getWeekPlan(String id) { NetWorks.getWeekPlan(id, new Observer>() { @Override public void onSubscribe(Disposable d) { } @Override public void onNext(ResponseResult result) { if (result != null && result.getCode() == 200) { showWeekPlan(result.getData().getList()); } } @Override public void onError(Throwable e) { } @Override public void onComplete() { } }); } public void startQRView() { startActivityForResult(new Intent(getActivity(), QRActivity.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(); } } } } @OnClick({R.id.iv_2, R.id.tv_name}) public void choose(View view) { Intent intent = new Intent(getActivity(), ChooseActivity.class); startActivity(intent); } @OnClick(R.id.iv_1) public void exit(View view) { getActivity().finish(); } private void showWeekPlan(List