zoukankan      html  css  js  c++  java
  • RecyclerView-------MyAdapter代码

     1 package com.example.administrator.recyclerview;
     2 
     3 import android.content.Context;
     4 import android.support.v7.widget.RecyclerView;
     5 import android.view.LayoutInflater;
     6 import android.view.View;
     7 import android.view.ViewGroup;
     8 import android.widget.ImageView;
     9 
    10 import java.util.List;
    11 
    12 /**
    13  *  RecyclerView.Adapter<MyViewHolder>尖括号里面的表示数据的类型
    14  *  RecyclerView有自己的Viewholder但是我们需要创建自己的viewholder去实现它
    15  * Created by Zyh on 2016/9/19.
    16  */
    17 public class MyAdapter extends RecyclerView.Adapter<MyViewHolder> implements View.OnClickListener{
    18     Context content;
    19     List<Dates> mDates;
    20     LayoutInflater inflater;
    21 
    22     public MyAdapter(Context content, List<Dates> mDates) {
    23         this.content = content;
    24         this.mDates = mDates;
    25         this.inflater=LayoutInflater.from(content);
    26     }
    27     @Override
    28     public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    29         View view=inflater.inflate(R.layout.item_main,null);
    30         MyViewHolder viewHolder=new MyViewHolder(view);
    31         return viewHolder;
    32     }
    33     @Override
    34     public void onBindViewHolder(MyViewHolder holder, int position) {
    35         holder.iT.setImageResource(mDates.get(position).mImageId);
    36         holder.iT.setTag(position);
    37     }
    38 
    39 //设置数量
    40     @Override
    41     public int getItemCount() {
    42         return mDates.size();
    43     }
    44 
    45     OnRecyclerViewItemClickListener mListener;
    46 
    47 
    48 //  定义一个接口里面有一个抽象的方法,重点是里面的参数,View要与点击事件的view相对应
    49     protected interface OnRecyclerViewItemClickListener{
    50         public abstract void OnItem(View view,int position);
    51     }
    52 /**  定义一个方法,里面的参数是接口类型的对象,从而在创建接口对象的时候去实现接口的抽象方法,
    53     抽象方法内的参数与系统点击事件的方法一致**/
    54     public void setOnRecyclerViewItemClickListener(OnRecyclerViewItemClickListener mListener){
    55      this.mListener=mListener;
    56 
    57  }
    58     @Override
    59     public void onClick(View view) {
    60 
    61         if (mListener!=null){
    62            mListener.OnItem(view, (Integer) view.getTag());
    63 
    64 
    65         }
    66 
    67     }
    68 
    69 }
    70 
    71 class MyViewHolder extends RecyclerView.ViewHolder {
    72     ImageView iT;
    73     public MyViewHolder(View itemView) {
    74         super(itemView);
    75         iT= (ImageView) itemView.findViewById(R.id.item_image);
    76     }
    77 }
  • 相关阅读:
    Spark IMF传奇行动第19课:spark排序总结
    Spark IMF传奇行动第18课:RDD持久化、广播、累加器总结
    Spark IMF传奇行动第17课Transformations实战总结
    Spark IMF传奇行动第16课RDD实战总结
    Spark3000门徒第15课RDD创建内幕彻底解密总结
    Spark3000门徒第14课spark RDD解密总结
    Spark3000门徒第13课Spark内核架构解密总结
    Spark3000门徒第12课Spark HA实战总结
    Spark3000门徒第11课彻底解密WordCount运行原理总结
    Spark3000门徒第10课Java开发Spark实战总结
  • 原文地址:https://www.cnblogs.com/zhaiyaohua/p/5886643.html
Copyright © 2011-2022 走看看