This commit is contained in:
2023-10-13 18:29:38 +08:00
parent abeb92ab51
commit 427d10158b
31 changed files with 1887 additions and 63 deletions

View File

@@ -0,0 +1,124 @@
package com.shayu.onetoone.adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import com.makeramen.roundedimageview.RoundedImageView;
import com.shayu.onetoone.R;
import com.shayu.onetoone.bean.FollowBean;
import com.shayu.onetoone.bean.HomeRankBean;
import com.shayu.onetoone.manager.OTONetManager;
import com.yunbao.common.glide.ImgLoader;
import com.yunbao.common.http.base.HttpCallback;
import com.yunbao.common.utils.ToastUtil;
import com.yunbao.common.utils.WordUtil;
import java.util.ArrayList;
import java.util.List;
public class HomeRankListAdapter extends RecyclerView.Adapter<HomeRankListAdapter.ViewHolder> {
private Context mContext;
private List<HomeRankBean> list;
public HomeRankListAdapter(Context mContext) {
this.mContext = mContext;
list = new ArrayList<>();
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
return new ViewHolder(LayoutInflater.from(mContext).inflate(R.layout.item_home_rank, parent, false));
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
holder.setData(list.get(position), position);
}
@Override
public int getItemCount() {
return list.size();
}
public void setList(List<HomeRankBean> data) {
this.list = data;
notifyDataSetChanged();
}
public void add(HomeRankBean homeRankBean) {
this.list.add(homeRankBean);
}
public void clear() {
list.clear();
notifyDataSetChanged();
}
public class ViewHolder extends RecyclerView.ViewHolder {
private TextView rank;
private RoundedImageView avatar;
private ImageView sex;
private TextView user_name;
private TextView level;
private ImageView ic_level;
private TextView money;
private Button follow;
public ViewHolder(@NonNull View itemView) {
super(itemView);
rank = itemView.findViewById(R.id.rank);
avatar = itemView.findViewById(R.id.avatar);
sex = itemView.findViewById(R.id.sex);
user_name = itemView.findViewById(R.id.user_name);
level = itemView.findViewById(R.id.level);
ic_level = itemView.findViewById(R.id.ic_level);
money = itemView.findViewById(R.id.money);
follow = itemView.findViewById(R.id.follow);
}
private void setData(HomeRankBean bean, int position) {
rank.setText(position + 4 + "");
user_name.setText(bean.getUserNicename());
level.setText("Lv." + bean.getLevel());
money.setText(bean.getMoney());
if (bean.getSex() == 1) {
sex.setImageResource(R.mipmap.ic_message_tab_man);
} else {
sex.setImageResource(R.mipmap.ic_message_tab_woman);
}
if (bean.isFollow()) {
follow.setVisibility(View.GONE);
} else {
follow.setVisibility(View.VISIBLE);
}
ImgLoader.display(mContext, bean.getAvatar(), avatar);
follow.setText(bean.getUid());
follow.setOnClickListener(v -> {
OTONetManager.getInstance(mContext)
.follow(v.getTag().toString(), new HttpCallback<FollowBean>() {
@Override
public void onSuccess(FollowBean data) {
ToastUtil.show(WordUtil.getNewString(R.string.system_tip_success));
v.setVisibility(View.GONE);
}
@Override
public void onError(String error) {
}
});
});
}
}
}