• RecyclerView不同类型Item的展示


    代码如下:

    public class AccessoiresAdapter extends RecyclerView.Adapter {
    
      final int VIEW_TYPE_ACCESSORY = 0;
      final int VIEW_TYPE_ACCESSORY_SPECIAL_OFFER = 1;
    
      List<Accessory> items;
    
      @Override public int getItemViewType(int position) {
         Accessory accessory = items.get(postion);
         if (accessory.hasSpecialOffer()){
           return VIEW_TYPE_ACCESSORY_SPECIAL_OFFER;
         } else {
           return VIEW_TYPE_ACCESSORY;
         }
      }
    
      @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        if (VIEW_TYPE_ACCESSORY_SPECIAL_OFFER == viewType){
          return new SpecialOfferAccessoryViewHolder(inflater.inflate(R.layout.item_accessory_offer, parent));
        } else {
          return new AccessoryViewHolder (inflater.inflate(R.layout.item_accessory)):
        }
      }
    
      ...
    
    }
    

      

    public class HomeAdapter extends AccessoriesAdapter {
    
      final int VIEW_TYP_NEWS_TEASER = 2;
    
      @Override public int getItemViewType(int position) {
         if (items.get(position) instanceof NewsTeaser){
           return VIEW_TYP_NEWS_TEASER;
         } else {
           // accessories and special offers
           return super.getItemViewType(position);
         }
      }
    
      @Override public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        if (VIEW_TYP_NEWS_TEASER == viewType){
          return new NewsTeaserItem( inflater.inflate(R.layout.item_news_teaser, parent));
        } else {
          // accessories and special offers
          return super.onCreateViewHolder(parent, viewType);
        }
      }
    
      ...
    }
    

      

    From:http://hannesdorfmann.com/android/adapter-delegates

  • 相关阅读:
    如何统计一个字符串中某个字符出现的次数
    从GitHub克隆项目到本地
    nginx能做什么
    dubbo的使用实例
    zookeeper单机安装
    Http发送post(x-www-form-urlencoded)请求
    集群与分布式的区别
    cas的客户端应用是负载均衡,单点退出怎么办?
    mybatis执行DDL语句
    sql server 行列互换
  • 原文地址:https://www.cnblogs.com/spring87/p/5427430.html
Copyright © 2020-2023  润新知