package com.lzx.demo.type;
import android.view.View;
import com.lzx.demo.R;
import com.lzx.demo.bean.Category;
import com.lzx.demo.bean.HotList;
import com.lzx.demo.bean.ProductList;
import com.lzx.demo.holder.BetterViewHolder;
import com.lzx.demo.holder.CategoryViewHolder;
import com.lzx.demo.holder.HotListViewHolder;
import com.lzx.demo.holder.ProductListViewHolder;
public class ListTypeFactory implements TypeFactory {
@Override
public int type(Category category) {
return R.layout.layout_list_item_category;
}
@Override
public int type(ProductList products) {
return R.layout.layout_item_list;
}
@Override
public int type(HotList products) {
return R.layout.layout_item_horizontal_list;
}
@Override
public BetterViewHolder onCreateViewHolder(View itemView, int viewType) {
BetterViewHolder viewHolder = null;
switch (viewType) {
case R.layout.layout_list_item_category:
viewHolder = new CategoryViewHolder(itemView);
break;
case R.layout.layout_item_list:
viewHolder = new ProductListViewHolder(itemView);
break;
case R.layout.layout_item_horizontal_list:
viewHolder = new HotListViewHolder(itemView);
break;
default:
break;
}
return viewHolder;
}
}