<commit_before>

# LMRecyclerView
支持加载更多的RecyclerView

######[使用文档简书版](http://www.jianshu.com/p/09c076d275d5)

###功能
* 支持加载更多
* 支持自定义加载布局
* 支持线性，网格，瀑布流

### 注意事项
* 使用网格布局`GridLayoutManager`时,要保证首次注入的数据源的数目是每行要显示的数据的整数倍，示例代码如下：

```
@Overridepublic void onActivityCreated(@Nullable Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);  
initDatas(); 
//此处设置支持每行最多显示两个，那么数据源mData.size 就要是2的
//    整数倍（这里只针对首次初始化，后续就可以任意添加数据了）
mLMRecyclerView.setLayoutManager(new GridLayoutManager(getActivity(),2));
mAdapter = new GridAdapter(getActivity(), mDatas); 
mLMRecyclerView.setAdapter(mAdapter); 
mLMRecyclerView.setOnRecyclerLoadMoreListener(this);
}

private void initDatas(){ 
mDatas.clear();  
for(int i=0;i<images.length;i++){
mDatas.add(images[i]);  
mDatas.add(images[i]); 
}}

```
####效果图

![iconfont-screen.gif](http://upload-images.jianshu.io/upload_images/1928103-8cafb61a52c74abc.gif?imageMogr2/auto-orient/strip)

####如何使用
* 使用方式和使用RecyclerView一样
* 实现`OnRecyclerLoadMoreListener`接口进行监听数据加载
* 最后调用 `loadComplete(boolean isSuccess, boolean isHasMore)`,通知`LMRecyclerView`加载完成。

####自定义加载布局请参考demo
*  [DefaultLoadMoreView](https://github.com/cocolove2/LMRecyclerView/blob/master/app/src/main/java/com/cocolove2/lmrecyclerviewdemo/lmRecyclerview/DefaultLoadMoreView.java)<commit_msg>fix api<commit_after>

# LMRecyclerView
支持加载更多的RecyclerView

######[使用文档简书版](http://www.jianshu.com/p/09c076d275d5)

###功能
* 支持加载更多
* 支持自定义加载布局
* 支持线性，网格，瀑布流
* 支持头部布局`v1.0.1添加`

### 注意事项`在v1.0.1版本中该问题已经解决`
* 使用网格布局`GridLayoutManager`时,要保证首次注入的数据源的数目是每行要显示的数据的整数倍，示例代码如下：

```
@Overridepublic void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
  initDatas();
//此处设置支持每行最多显示两个，那么数据源mData.size 就要是2的
//    整数倍（这里只针对首次初始化，后续就可以任意添加数据了）
 mLMRecyclerView.setLayoutManager(new GridLayoutManager(getActivity(),2));
    mAdapter = new GridAdapter(getActivity(), mDatas);
   mLMRecyclerView.setAdapter(mAdapter);
   mLMRecyclerView.setOnRecyclerLoadMoreListener(this);
}

private void initDatas(){
   mDatas.clear();
  for(int i=0;i<images.length;i++){
        mDatas.add(images[i]);
      mDatas.add(images[i]);
   }}

```

*  ItemViewType建议为正数，footView的ItemViewType＝－404
####效果图

![iconfont-screen.gif](http://upload-images.jianshu.io/upload_images/1928103-8cafb61a52c74abc.gif?imageMogr2/auto-orient/strip)

####如何使用
* 使用方式和使用RecyclerView一样
* 实现`OnRecyclerLoadMoreListener`接口进行监听数据加载
* 最后调用 `loadComplete(boolean isSuccess, boolean isHasMore)`,通知`LMRecyclerView`加载完成。

* 使用`setSupportHeader(boolean isSupportHeader)`控制是否支持头部布局,`默认支持`

* 使用`setLoadMoreView(@Nullable LoadMoreViewBase loadMoreView)`设置自定义加载更多布局

* 使用`setLoadingMoreEnable(boolean loadMoreEnable)`设置是否支持上拉加载更多

####自定义加载布局请参考demo
*  [DefaultLoadMoreView](https://github.com/cocolove2/LMRecyclerView/blob/master/app/src/main/java/com/cocolove2/lmrecyclerviewdemo/lmRecyclerview/DefaultLoadMoreView.java)

{'fraction_non_alphanumeric': 0.14163530619226822, 'fraction_numerical': 0.022921655833048237, 'mean_word_length': 7.807228915662651, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 3, 'https://': 2, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7401326', 'n_tokens_mistral': 1426, 'n_tokens_neox': 1464, 'n_words': 105}