package com.application.zhangshi_app_android.adapter;
|
|
import android.content.Context;
|
import android.media.Image;
|
import android.view.View;
|
|
import com.android.app_base.base.adapter.BaseRVAdapter;
|
import com.application.zhangshi_app_android.R;
|
import com.application.zhangshi_app_android.bean.FamilyMemorabiliaBean;
|
import com.application.zhangshi_app_android.databinding.ItemImageBinding;
|
import com.application.zhangshi_app_android.ui.function.CreateFamilyProjectActivityViewModel;
|
|
import java.util.List;
|
|
/**
|
* @author Ljj
|
* @date 2023.04.01. 22:42
|
* @desc
|
*/
|
public class ImageRvAdapter extends BaseRVAdapter<String, ItemImageBinding, BaseRVAdapter.BaseViewHolder<ItemImageBinding>> {
|
|
private boolean isEdited = false;
|
private CreateFamilyProjectActivityViewModel viewModel;
|
public ImageRvAdapter(Context context) {
|
super(context);
|
}
|
|
public ImageRvAdapter(Context context, CreateFamilyProjectActivityViewModel viewModel) {
|
super(context);
|
this.viewModel = viewModel;
|
}
|
@Override
|
protected int getLayoutId() {
|
return R.layout.item_image;
|
}
|
|
@Override
|
protected void onBind(BaseViewHolder<ItemImageBinding> holder, int position) {
|
holder.getBinding().setUrl(mDataList.get(position));
|
if (isEdited) {
|
holder.getBinding().ivDelete.setVisibility(View.VISIBLE);
|
} else {
|
holder.getBinding().ivDelete.setVisibility(View.GONE);
|
}
|
holder.getBinding().ivDelete.setOnClickListener(v -> {
|
FamilyMemorabiliaBean bean = viewModel.getBeanMutableLiveData().getValue();
|
if (bean!=null){
|
List<String> list = bean.getUrlList();
|
list.remove(position);
|
bean.setUrlList(list);
|
viewModel.getBeanMutableLiveData().postValue(bean);
|
}
|
});
|
}
|
|
@Override
|
protected BaseViewHolder<ItemImageBinding> getViewHolder(ItemImageBinding itemBind,int viewType) {
|
return new BaseViewHolder<>(itemBind);
|
}
|
|
public boolean isEdited() {
|
return isEdited;
|
}
|
|
public void setIsEdited(boolean edited) {
|
isEdited = edited;
|
notifyItemRangeChanged(0,getItemCount());
|
}
|
}
|