content: /*
   * Copyright (C) 2014 VenomVendor <info@VenomVendor.com>
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   *
   *     http://www.apache.org/licenses/LICENSE-2.0
   *
   * Unless required by applicable law or agreed to in writing, software
   * distributed under the License is distributed on an "AS IS" BASIS,
   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   * See the License for the specific language governing permissions and
   * limitations under the License.
   *
   */
  
  package com.knight.arch.ui.adapter;
  
  import android.support.v4.app.FragmentActivity;
  import android.support.v7.widget.RecyclerView;
  import android.view.LayoutInflater;
  import android.view.View;
  import android.view.ViewGroup;
  import android.widget.TextView;
  
  import com.knight.arch.R;
  import com.knight.arch.data.ReposKV;
  
  import java.util.List;
  
  
  /**
   * @author andyiac
   * @date 15-9-16
   * @web http://blog.andyiac.com
   * @github https://github.com/andyiac
   */
  public class HotReposDetailsListAdapterHolder extends RecyclerView.Adapter<HotReposDetailsListAdapterHolder.ViewHolder> {
  
      OnItemClickListener mItemClickListener;
      private FragmentActivity mActivity;
      private List<ReposKV> mData;
  
      public HotReposDetailsListAdapterHolder(FragmentActivity mActivity, List<ReposKV> data) {
          this.mActivity = mActivity;
          this.mData = data;
  
      }
  
      @Override
      public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
          final LayoutInflater mInflater = LayoutInflater.from(parent.getContext());
          final View sView = mInflater.inflate(R.layout.hot_repos_details_single_list_item, parent, false);
          return new ViewHolder(sView);
      }
  
      @Override
      public void onBindViewHolder(ViewHolder holder, int position) {
          holder.tvKey.setText(mData.get(position).getKey());
          holder.tvValue.setText(mData.get(position).getValue());
      }
  
      @Override
      public int getItemCount() {
          return mData.size();
      }
  
      public void setOnItemClickListener(final OnItemClickListener mItemClickListener) {
          this.mItemClickListener = mItemClickListener;
      }
  
  
      public interface OnItemClickListener {
          void onItemClick(View view, int position);
      }
  
      public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
  
          TextView tvKey, tvValue;
  
          public ViewHolder(View view) {
              super(view);
              tvKey = (TextView) view.findViewById(R.id.id_repos_details_key);
              tvValue = (TextView) view.findViewById(R.id.id_hot_repos_details_value);
              view.setOnClickListener(this);
          }
  
          @Override
          public void onClick(View v) {
              if (mItemClickListener != null) {
                  mItemClickListener.onItemClick(v, getLayoutPosition());
              }
          }
  
      }
  
  }
  