// Path: library/src/main/java/com/steve/creact/library/listener/TextWatcherAdapter.java
// public class TextWatcherAdapter implements TextWatcher {
// 
//   @Override
//   public void beforeTextChanged(CharSequence s, int start, int count, int after) {
// 
//   }
// 
//   @Override
//   public void onTextChanged(CharSequence s, int start, int before, int count) {
// 
//   }
// 
//   @Override
//   public void afterTextChanged(Editable s) {
// 
//   }
// }


import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.support.annotation.DrawableRes;
import android.support.annotation.IdRes;
import android.view.View;
import com.steve.creact.library.listener.TextWatcherAdapter;
package com.steve.creact.library;



/**
 * An interface provides useful APIs for all kinds of ViewHolder,and can be reused.
 * Created by jiyang on 16/4/25.
 */
public interface HolderAPI {

  Context getContext();
  void removeFromCache(@IdRes int id);
  void removeAll();
  void initView();
  <T extends View> T getView(@IdRes int id);

  void setText(@IdRes int id, CharSequence text);
  CharSequence getText(@IdRes int id);

  void setOnItemClickListener(View.OnClickListener listener);
// Path: library/src/main/java/com/steve/creact/library/listener/TextWatcherAdapter.java
// public class TextWatcherAdapter implements TextWatcher {
// 
//   @Override
//   public void beforeTextChanged(CharSequence s, int start, int count, int after) {
// 
//   }
// 
//   @Override
//   public void onTextChanged(CharSequence s, int start, int before, int count) {
// 
//   }
// 
//   @Override
//   public void afterTextChanged(Editable s) {
// 
//   }
// }


// Path: library/src/main/java/com/steve/creact/library/HolderAPI.java
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.support.annotation.DrawableRes;
import android.support.annotation.IdRes;
import android.view.View;
import com.steve.creact.library.listener.TextWatcherAdapter;

package com.steve.creact.library;



/**
 * An interface provides useful APIs for all kinds of ViewHolder,and can be reused.
 * Created by jiyang on 16/4/25.
 */
public interface HolderAPI {

  Context getContext();
  void removeFromCache(@IdRes int id);
  void removeAll();
  void initView();
  <T extends View> T getView(@IdRes int id);

  void setText(@IdRes int id, CharSequence text);
  CharSequence getText(@IdRes int id);

  void setOnItemClickListener(View.OnClickListener listener);
  void setTextWatcher(@IdRes int id, TextWatcherAdapter watcherAdapter);