接口 加recyclerview
//Activity
public class SecondActivity
extends AppCompatActivity
implements MyRecyclerAdapter.OnChildClickListener
mRecyclerView = (RecyclerView) findViewById(R.id.mRecyclerView);
GridLayoutManager gridLayoutManager = new GridLayoutManager(
this, 2, LinearLayoutManager.VERTICAL, false);
mRecyclerView.setLayoutManager(gridLayoutManager);
listuser = new ArrayList<>();
mAdapter = new MyRecyclerAdapter(SecondActivity.this, listuser);
mAdapter.setOnChildClickListener(this);
mRecyclerView.setAdapter(mAdapter);
@Override
public void onChildClick
(RecyclerView parent, View view, final int position, GoodList data) {
//adapter
public class MyRecyclerAdapter extends RecyclerView.Adapter<MyRecyclerAdapter.MyViewHolder>
implements View.OnClickListener{
public void setOnChildClickListener(OnChildClickListener listener) {
this.listener = listener;
}
@Override
public void onAttachedToRecyclerView(RecyclerView recyclerView) {
super.onAttachedToRecyclerView(recyclerView);
this.recyclerView = recyclerView;
}
@Override
public void onDetachedFromRecyclerView(RecyclerView recyclerView) {
super.onDetachedFromRecyclerView(recyclerView);
this.recyclerView = null;
}
public MyRecyclerAdapter(Context context, List<GoodList> datas) {
this.mContext = context;
this.listuser = datas;
inflater = LayoutInflater.from(mContext);
}
@Override
public MyRecyclerAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = inflater.inflate(R.layout.item_recyclerview, parent, false);
MyViewHolder holder = new MyViewHolder(view);
view.setOnClickListener(this);
return holder;
}
@Override
public void onBindViewHolder(MyRecyclerAdapter.MyViewHolder holder, int position) {
holder.tv1.setText("" + listuser.get(position).getGoods_title());
holder.tv2.setText(listuser.get(position).getSale_price()+"");
holder.tv3.setText("已售" + listuser.get(position).getTotal_sale());
holder.tv2.setTextColor(ContextCompat.getColor(mContext,R.color.colorRed));
holder.tv3.setTextColor(ContextCompat.getColor(mContext,R.color.colorGray));
if (TextUtils.isEmpty(listuser.get(position).getGoods_thumb().toString())) {
Glide
.with(mContext);
holder.img.setImageDrawable(mContext.getResources().getDrawable(R.mipmap.ic_launcher));//当图片为空时显示原始机器人图
Log.e("图片", "图片为空");
} else {
//图片加载
Glide
.with(mContext)
.load(listuser.get(position).getGoods_thumb().toString())
// .centerCrop()//完全填充并裁剪额外部分
.fitCenter()//图片完全显示,可能会填不满
.placeholder(R.mipmap.ic_launcher)//图片加载中时显示原始机器人图
.into(holder.img);
}
}
@Override
public int getItemCount() {
return listuser.size();
}
@Override
public void onClick(View view) {
if(recyclerView != null && listener !=null){
int position = recyclerView.getChildAdapterPosition(view);
listener.onChildClick(recyclerView,view,position,listuser.get(position));
}
}
public interface OnChildClickListener {
void onChildClick(RecyclerView parent, View view, int position, GoodList data);
}
public class MyViewHolder extends RecyclerView.ViewHolder {
TextView tv1, tv2,tv3;
ImageView img;
public MyViewHolder(View itemView) {
super(itemView);
tv1 = (TextView) itemView.findViewById(R.id.goods_title);
tv2 = (TextView) itemView.findViewById(R.id.sale_price);
tv3 = (TextView) itemView.findViewById(R.id.total_sale);
img = (ImageView) itemView.findViewById(R.id.goods_thumb);
}
}
}
//Activity
public class SecondActivity
extends AppCompatActivity
implements MyRecyclerAdapter.OnChildClickListener
mRecyclerView = (RecyclerView) findViewById(R.id.mRecyclerView);
GridLayoutManager gridLayoutManager = new GridLayoutManager(
this, 2, LinearLayoutManager.VERTICAL, false);
mRecyclerView.setLayoutManager(gridLayoutManager);
listuser = new ArrayList<>();
mAdapter = new MyRecyclerAdapter(SecondActivity.this, listuser);
mAdapter.setOnChildClickListener(this);
mRecyclerView.setAdapter(mAdapter);
@Override
public void onChildClick
(RecyclerView parent, View view, final int position, GoodList data) {
//adapter
public class MyRecyclerAdapter extends RecyclerView.Adapter<MyRecyclerAdapter.MyViewHolder>
implements View.OnClickListener{
public void setOnChildClickListener(OnChildClickListener listener) {
this.listener = listener;
}
@Override
public void onAttachedToRecyclerView(RecyclerView recyclerView) {
super.onAttachedToRecyclerView(recyclerView);
this.recyclerView = recyclerView;
}
@Override
public void onDetachedFromRecyclerView(RecyclerView recyclerView) {
super.onDetachedFromRecyclerView(recyclerView);
this.recyclerView = null;
}
public MyRecyclerAdapter(Context context, List<GoodList> datas) {
this.mContext = context;
this.listuser = datas;
inflater = LayoutInflater.from(mContext);
}
@Override
public MyRecyclerAdapter.MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = inflater.inflate(R.layout.item_recyclerview, parent, false);
MyViewHolder holder = new MyViewHolder(view);
view.setOnClickListener(this);
return holder;
}
@Override
public void onBindViewHolder(MyRecyclerAdapter.MyViewHolder holder, int position) {
holder.tv1.setText("" + listuser.get(position).getGoods_title());
holder.tv2.setText(listuser.get(position).getSale_price()+"");
holder.tv3.setText("已售" + listuser.get(position).getTotal_sale());
holder.tv2.setTextColor(ContextCompat.getColor(mContext,R.color.colorRed));
holder.tv3.setTextColor(ContextCompat.getColor(mContext,R.color.colorGray));
if (TextUtils.isEmpty(listuser.get(position).getGoods_thumb().toString())) {
Glide
.with(mContext);
holder.img.setImageDrawable(mContext.getResources().getDrawable(R.mipmap.ic_launcher));//当图片为空时显示原始机器人图
Log.e("图片", "图片为空");
} else {
//图片加载
Glide
.with(mContext)
.load(listuser.get(position).getGoods_thumb().toString())
// .centerCrop()//完全填充并裁剪额外部分
.fitCenter()//图片完全显示,可能会填不满
.placeholder(R.mipmap.ic_launcher)//图片加载中时显示原始机器人图
.into(holder.img);
}
}
@Override
public int getItemCount() {
return listuser.size();
}
@Override
public void onClick(View view) {
if(recyclerView != null && listener !=null){
int position = recyclerView.getChildAdapterPosition(view);
listener.onChildClick(recyclerView,view,position,listuser.get(position));
}
}
public interface OnChildClickListener {
void onChildClick(RecyclerView parent, View view, int position, GoodList data);
}
public class MyViewHolder extends RecyclerView.ViewHolder {
TextView tv1, tv2,tv3;
ImageView img;
public MyViewHolder(View itemView) {
super(itemView);
tv1 = (TextView) itemView.findViewById(R.id.goods_title);
tv2 = (TextView) itemView.findViewById(R.id.sale_price);
tv3 = (TextView) itemView.findViewById(R.id.total_sale);
img = (ImageView) itemView.findViewById(R.id.goods_thumb);
}
}
}