核心代码
adapter
public void setmDatas(List<String> datas) {
if (mDatas != null) {
mDatas.clear();
this.notifyDataSetChanged();
}
mDatas.addAll(datas);
this.notifyDataSetChanged();
}
Activity中
mDatas= ListQuChongUtil.getRemoveList(dbUtil.findclassifyNameByParentClassifyName("蔬菜"));
mRecyclerView.setAdapter(mAdapter);
mAdapter.setmDatas(mDatas);
全代码
package com.wintec.huashang.adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import com.wintec.huashang.R;
import java.util.List;
import androidx.recyclerview.widget.RecyclerView;
public class GalleryAdapter extends
RecyclerView.Adapter<GalleryAdapter.ViewHolder>
{
public interface OnItemClickLitener
{
void onItemClick(View view, int position);
}
private OnItemClickLitener mOnItemClickLitener;
public void setOnItemClickLitener(OnItemClickLitener mOnItemClickLitener)
{
this.mOnItemClickLitener = mOnItemClickLitener;
}
private LayoutInflater mInflater;
private List<String> mDatas;
Context mContext;
public GalleryAdapter(Context context, List<String> datats)
{
mContext=context;
mInflater = LayoutInflater.from(context);
mDatas = datats;
}
public static class ViewHolder extends RecyclerView.ViewHolder
{
public ViewHolder(View arg0)
{
super(arg0);
}
ImageView mImg;
TextView mTxt;
}
public void setmDatas(List<String> datas) {
if (mDatas != null) {
mDatas.clear();
this.notifyDataSetChanged();
}
mDatas.addAll(datas);
this.notifyDataSetChanged();
}
@Override
public int getItemCount()
{
return mDatas.size();
}
/**
* 创建ViewHolder
*/
@Override
public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int i)
{
View view = mInflater.inflate(R.layout.activity_index_gallery_item,
viewGroup, false);
ViewHolder viewHolder = new ViewHolder(view);
// viewHolder.mImg = (ImageView) view
// .findViewById(R.id.id_index_gallery_item_image);
viewHolder.mTxt = (TextView) view
.findViewById(R.id.id_index_gallery_item_text);
return viewHolder;
}
/**
* 设置值
*/
@Override
public void onBindViewHolder(final ViewHolder viewHolder, final int position)
{
// viewHolder.mImg.setImageResource(mDatas.get(position));
viewHolder.mTxt.setText(mDatas.get(position)+"");
// viewHolder.itemView.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(final View v) {
// Toast.makeText(mContext, "点击的位置:"+position +"点击的内容: "+mDatas.get(position), Toast.LENGTH_SHORT).show();
//
// }
// });
//如果设置了回调,则设置点击事件
if (mOnItemClickLitener != null)
{
viewHolder.itemView.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
mOnItemClickLitener.onItemClick(viewHolder.itemView, position);
}
});
}
}
}
private void initDatas()
{
mDatas= ListQuChongUtil.getRemoveList(dbUtil.findclassifyNameByParentClassifyName("蔬菜"));
// mDatas=dbUtil.findclassifyNameByParentClassifyNameQuchong("蔬菜");
Log.e("wy","二级分类数量: "+ mDatas.size());
}
private void initView() {
mRecyclerView = (RecyclerView) findViewById(R.id.id_recyclerview_horizontal);
//设置布局管理器
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
mRecyclerView.setLayoutManager(linearLayoutManager);
//设置适配器
mAdapter = new GalleryAdapter(this, mDatas);
mAdapter.setOnItemClickLitener(new GalleryAdapter.OnItemClickLitener()
{
@Override
public void onItemClick(View view, int position)
{
Log.e("wy","run: "+ mDatas.get(position));
searchKeyHanzi(mDatas.get(position)+"");
}
});
mRecyclerView.setAdapter(mAdapter);
}