依赖:
compile 'com.android.support:recyclerview-v7:26.0.0-alpha1'
在Activity中设置Recyclerview的布局管理器:
mRlv.setLayoutManager(new LinearLayoutManager(this));
leftAdapter = new LeftAdapter(data, this);
mRlv.setAdapter(leftAdapter);
leftAdapter.setOnItemClickLisenter(new LeftAdapter.OnItemClickLisenter() {
@Override
public void onitemClick(int a) {
leftPersent.getRight("getProductCatagory",a);
Recyclerview的适配器
public class RightRLVAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder>{
private List<RightBean.DataBean.ListBean> list;
private Context context;
private String s;
public RightRLVAdapter( List<RightBean.DataBean.ListBean> list, Context context) {
this.list = list;
this.context = context;
}
//创建新View,被LayoutManager所调用
@Override
public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {
View view = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.rightrvlitem,viewGroup,false);
ViewHolder vh = new ViewHolder(view);
return vh;
}
@Override
public void onBindViewHolder(RecyclerView.ViewHolder holder, int position) {
RightBean.DataBean.ListBean listBean = list.get(position);
ViewHolder vh= (ViewHolder) holder;
String icon = listBean.getIcon();
Uri uri=Uri.parse(icon);
vh.mTextView.setText(listBean.getName());
vh.sdv.setImageURI(uri);
}
//获取数据的数量
@Override
public int getItemCount() {
return list.size();
}
//自定义的ViewHolder,持有每个Item的的所有界面元素
public static class ViewHolder extends RecyclerView.ViewHolder {
public TextView mTextView;
SimpleDraweeView sdv;
public ViewHolder(View view){
super(view);
mTextView = (TextView) view.findViewById(R.id.tv2);
sdv=view.findViewById(R.id.sdl);
}
}
public interface OnItemClickLisenter{
void onitemClick(int a);
}
private OnItemClickLisenter onItemClickLisenter;
public void setOnItemClickLisenter(OnItemClickLisenter onItemClickLisenter){
this.onItemClickLisenter=onItemClickLisenter;
}
}
rightrvlitem的布局:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:fresco="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/sdl"
android:layout_width="20dp"
android:layout_height="20dp"
fresco:fadeDuration="300"-----淡入淡出动画持续时间
fresco:actualImageScaleType="focusCrop"-----设置缩放类型
fresco:placeholderImage="@color/wait_color"-----占位图
fresco:placeholderImageScaleType="fitCenter"-----占位图缩放类型
fresco:failureImage="@drawable/error"-----加载失败图
fresco:failureImageScaleType="centerInside"-----加载失败图缩放类型
fresco:retryImage="@drawable/retrying"-----点击重新加载图
fresco:retryImageScaleType="centerCrop"-----重新加载图缩放类型
fresco:progressBarImage="@drawable/progress_bar"-----进度条图
fresco:progressBarImageScaleType="centerInside"-----进度条图缩放类型
fresco:progressBarAutoRotateInterval="1000"-----进度条图片自动旋转时间间隔
fresco:backgroundImage="@color/blue"-----背景图
fresco:overlayImage="@drawable/watermark"-----叠加图
fresco:pressedStateOverlayImage="@color/red"-----按压状态时显示的叠加图
fresco:roundAsCircle="false"-----是否为圆形
fresco:roundedCornerRadius="1dp"-----圆角半径
fresco:roundTopLeft="true"-----左上角为圆角
fresco:roundTopRight="false"-----右上角不为圆角
fresco:roundBottomLeft="false"-----左下角不为圆角
fresco:roundBottomRight="true"-----右下角为圆角
fresco:roundWithOverlayColor="@color/corner_color"-----圆形或圆角四个角漏出的颜色
fresco:roundingBorderWidth="2dp"-----圆形或圆角的边框宽度
fresco:roundingBorderColor="@color/border_color"-----圆形或圆角的边框颜色 />
<TextView
android:id="@+id/tv2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>