Linjiajia
2023-05-15 a0dc6be52293a64ebfe38b8c2391dc7d2ffe63ae
app/src/main/java/com/application/zhangshi_app_android/adapter/GrowthExperiencePrimaryRvAdapter.java
@@ -31,11 +31,9 @@
public class GrowthExperiencePrimaryRvAdapter extends BaseRVAdapter<GrowthExperienceBean, ItemGrowthExperiencePrimaryBinding, GrowthExperiencePrimaryRvAdapter.ViewHolder> {
    private GrowthExperienceActivityViewModel viewModel;
    private List<GrowthExperienceBean> mDataList;
    public GrowthExperiencePrimaryRvAdapter(Context context,List<GrowthExperienceBean> dataList) {
    public GrowthExperiencePrimaryRvAdapter(Context context) {
        super(context);
        mDataList = dataList;
    }
    public GrowthExperiencePrimaryRvAdapter(Context context, GrowthExperienceActivityViewModel viewModel) {
@@ -43,27 +41,21 @@
        this.viewModel = viewModel;
    }
    public GrowthExperiencePrimaryRvAdapter(GrowthExperienceActivity growthExperienceActivity) {
        super(growthExperienceActivity);
    }
    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        ItemGrowthExperiencePrimaryBinding itemBind = DataBindingUtil.inflate(LayoutInflater.from(parent.getContext()),getLayoutId(),parent,false);
        return new ViewHolder(itemBind);
    }
    @Override
    protected int getLayoutId() {
        return R.layout.item_growth_experience_primary;
    }
    @Override
    protected ViewHolder getViewHolder(ItemGrowthExperiencePrimaryBinding itemBind) {
    protected ViewHolder getViewHolder(ItemGrowthExperiencePrimaryBinding itemBind,int viewType) {
        return new ViewHolder(itemBind);
    }
    @Override
    protected void onBind(ViewHolder holder, int position) {
        holder.getBinding().setBean(mDataList.get(position));
        if (position % 2 != 0){
            holder.getBinding().cardView.setCardBackgroundColor(mContext.getColor(R.color.color_card_blue));
        }else {
@@ -95,8 +87,9 @@
                    holder.getBinding().cardView.startAnimation(a);
                    holder.isExpended = false;
                }else{
                    int recyclerviewHeight = mRecyclerView.getMeasuredHeight();
                    final int initialHeight = holder.getBinding().cardView.getMeasuredHeight();
                    holder.getBinding().cardView.measure(FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.WRAP_CONTENT);
                    holder.getBinding().cardView.measure(View.MeasureSpec.UNSPECIFIED, View.MeasureSpec.UNSPECIFIED);
                    int targetHeight = holder.getBinding().cardView.getMeasuredHeight();
                    int distanceToExpand = targetHeight - initialHeight;
                    Animation a = new Animation() {
@@ -119,23 +112,18 @@
                }
            }
        });
        holder.getBinding().layoutContent.setOnClickListener(v -> {
            AppManager.getAppManager().startActivity(
                    new Intent(getRecyclerView().getContext(), GrowthExperienceActivity.class)
                            .putExtra("bean",mDataList.get(position)));
        });
    }
    public static class ViewHolder extends BaseViewHolder<ItemGrowthExperiencePrimaryBinding>{
        private boolean isExpended;
        private ItemGrowthExperiencePrimaryBinding binding;
        public ViewHolder(ItemGrowthExperiencePrimaryBinding binding) {
            super(binding);
            binding=ItemGrowthExperiencePrimaryBinding.inflate(LayoutInflater.from(itemBind.getContext()),(ViewGroup) itemBind,false);
        }
    }
}