设置基本资料

This commit is contained in:
hch
2023-10-16 18:18:35 +08:00
parent 427d10158b
commit 9ae47dffc2
31 changed files with 1258 additions and 188 deletions

View File

@@ -0,0 +1,109 @@
package com.shayu.onetoone.adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.shayu.onetoone.R;
import com.yunbao.common.bean.UserAvatarSelectBean;
import com.yunbao.common.custom.RatioRoundImageView;
import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.interfaces.OnItemClickListener;
import java.util.ArrayList;
import java.util.List;
public class UserAvatarSelectAdapter extends RecyclerView.Adapter<UserAvatarSelectAdapter.AvatarSelectViewHolder> {
private Context mContext;
private List<UserAvatarSelectBean> list = new ArrayList<>();
private OnItemClickListener<UserAvatarSelectBean> onClickListener;
private int selectId = -1;
private int defId = -1;
private UserAvatarSelectBean selectInfo;
public void setList(List<UserAvatarSelectBean> list) {
this.list = list;
notifyDataSetChanged();
}
public int getSelect() {
if (selectId == -1 && getItemCount() > 0) {
return list.get(0).getId();
}
return selectId;
}
public void setOnClickListener(OnItemClickListener<UserAvatarSelectBean> onClickListener) {
this.onClickListener = onClickListener;
}
public int getDefId() {
return defId;
}
public UserAvatarSelectAdapter(Context mContext) {
this.mContext = mContext;
}
@NonNull
@Override
public AvatarSelectViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
return new AvatarSelectViewHolder(LayoutInflater.from(mContext).inflate(R.layout.item_user_avatar_select, parent, false));
}
@Override
public void onBindViewHolder(@NonNull AvatarSelectViewHolder holder, int position) {
holder.setData(list.get(position), position);
}
@Override
public int getItemCount() {
return list.size();
}
public void setDef(int id) {
this.defId = id;
}
public class AvatarSelectViewHolder extends RecyclerView.ViewHolder {
private View hide;
private View show;
private RatioRoundImageView avatar;
public AvatarSelectViewHolder(@NonNull View itemView) {
super(itemView);
hide = itemView.findViewById(R.id.hideCover);
show = itemView.findViewById(R.id.showCover);
avatar = itemView.findViewById(R.id.avatar);
itemView.setOnClickListener(v -> {
selectInfo = (UserAvatarSelectBean) v.getTag();
selectId = selectInfo.getId();
notifyDataSetChanged();
onClickListener.onItemClick(selectInfo, defId);
});
}
public void setData(UserAvatarSelectBean bean, int position) {
ImgLoader.display(itemView.getContext(), bean.getPath(), avatar);
if (selectId == -1 && bean.getChecked() == 1) {
selectId = bean.getId();
defId = bean.getId();
selectInfo = bean;
}
hide.setVisibility(View.GONE);
/*if (select == bean.getId()) {
show.setVisibility(View.VISIBLE);
hide.setVisibility(View.GONE);
} else {
show.setVisibility(View.INVISIBLE);
hide.setVisibility(View.VISIBLE);
}*/
itemView.setTag(bean);
}
}
}