package com.hjx.parent; import android.annotation.SuppressLint; import android.content.Intent; import android.os.Bundle; import android.widget.ImageView; import android.widget.TextView; import androidx.annotation.NonNull; import com.bumptech.glide.Glide; import com.chad.library.adapter.base.BaseQuickAdapter; import com.chad.library.adapter.base.BaseViewHolder; import com.google.gson.Gson; import com.hjx.parent.databinding.ActivityHomeworkDetailBinding; import com.hjx.parent.rx.BaseRxActivity; import com.prws.common.bean.ResponseResult; import com.prws.common.bean.homework.HomeWork; import com.prws.common.bean.homework.HomeworkList; import com.prws.common.net.NetWorks; import java.util.ArrayList; public class HomeworkDetailActivity extends BaseRxActivity { private HomeworkList mData; private Adapter mAdapter = new Adapter(); @Override public void initView(Bundle savedInstanceState) { binding.toolbar.setNavigationOnClickListener(v -> onBackPressed()); String json = getIntent().getStringExtra("data"); mData = new Gson().fromJson(json, HomeworkList.class); binding.tvTitle.setText(mData.getName()); binding.recyclerView.setAdapter(mAdapter); getDetail(); binding.btnFeedback.setOnClickListener(v -> { Intent intent = new Intent(this, HomeworkSelectActivity.class); intent.putExtra("data", mData); intent.putExtra("list", new ArrayList<>(mAdapter.getData())); startActivity(intent); }); } @SuppressLint("CheckResult") private void getDetail() { NetWorks.service_url.getHomeworkDetail(NetWorks.getHeader(), mData.getId()) .compose(transformSingle()) .map(ResponseResult::getData) .subscribe((list, th) -> { if (th != null) th.printStackTrace(); mAdapter.setNewData(list); }); } @Override protected ActivityHomeworkDetailBinding getViewBinding() { return ActivityHomeworkDetailBinding.inflate(getLayoutInflater()); } static class Adapter extends BaseQuickAdapter { public Adapter() { super(R.layout.item_homework_detail); } @SuppressLint("SetTextI18n") @Override protected void convert(@NonNull BaseViewHolder holder, HomeWork homeWork) { TextView tvNumber = holder.getView(R.id.tvNumber); ImageView imageView = holder.getView(R.id.ivTopic); int number = getData().indexOf(homeWork) + 1; tvNumber.setText("第" + number + "题"); Glide.with(mContext).load(homeWork.url).into(imageView); } } }