| | |
| | | |
| | | @Override |
| | | protected void onBind(ViewHolder holder, int position) { |
| | | |
| | | holder.getBinding().setBean(getItem(position)); |
| | | holder.getBinding().setIsFold(holder.isExpended); |
| | | ConsumeRecordRvAdapter adapter = new ConsumeRecordRvAdapter(mContext); |
| | | holder.getBinding().rvConsumeRecord.setAdapter(adapter); |
| | | adapter.setData(getItem(position).getConsumeRecordBeans()); |
| | | holder.getBinding().ivFold.setOnClickListener(v -> { |
| | | if (holder.isExpended) { |
| | | holder.isExpended = false; |
| | | holder.getBinding().setIsFold(false); |
| | | collapseView(holder.getBinding().rvConsumeRecord, holder.getBinding().rvConsumeRecord); |
| | | } else { |
| | | holder.isExpended = true; |
| | | holder.getBinding().setIsFold(true); |
| | | expandView(holder.getBinding().rvConsumeRecord); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | @Override |
| | |
| | | a.setDuration(500); |
| | | initialView.startAnimation(a); |
| | | } |
| | | public void expendView(View initialView){ |
| | | public void expandView(View initialView){ |
| | | int initialHeight = initialView.getMeasuredHeight(); |
| | | initialView.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED); |
| | | int targetHeight = initialView.getMeasuredHeight(); |