RecyclerView Utils
Gradle
Get library from oss.sonatype.org.io
repositories {
maven { url 'https://oss.sonatype.org/content/repositories/releases' }
maven { url "https://oss.sonatype.org/content/repositories/snapshots" }
}
dependencies {
compile 'com.github.captain-miao:recyclerviewutils:1.2.4'
//comment follows:
//compile 'in.srain.cube:ultra-ptr:1.0.11'
//compile 'com.timehop.stickyheadersrecyclerview:library:[latest.version.number]@aar'
//compile 'com.bignerdranch.android:expandablerecyclerview:2.1.1'
//compile 'com.camnter.easyrecyclerviewsidebar:easyrecyclerviewsidebar:1.3'
}
### StickyAndExpandableRecyclerHeaderView(New) ![sticky_and_expandable_screenshot](https://raw.githubusercontent.com/captain-miao/me.github.com/master/screenshot/sticky_and_expandable.gif "sticky_and_expandable")
RefreshRecyclerView
RecyclerView addHeaderView and addFooterView
RecyclerView With Header ViewPage
StickyRecyclerHeaderView
ExpandableRecyclerHeaderView
IndexRecyclerHeaderView
Tips:
- work with ViewPager: disableWhenHorizontalMove() and implements PtrFrameLayout.HorizontalMoveArea
@Override
public boolean isHorizontalMoveArea(float x, float y) {
Rect rect = new Rect();
mViewPageContainer.getLocalVisibleRect(rect);
return rect.contains((int) x, (int) y);
}
- work with LongPressed: setInterceptEventWhileWorking()
- StickyRecyclerHeaderView work with addItemDecoration:
// don't add other ItemDecoration
// recyclerView.addItemDecoration(new DividerItemDecoration(getActivity()));
// only Add the sticky headers decoration
final StickyRecyclerHeadersDecoration headersDecor = new StickyRecyclerHeadersDecoration(adapter);
adapter.registerAdapterDataObserver(new RecyclerView.AdapterDataObserver() {
@Override
public void onChanged() {
headersDecor.invalidateHeaders();
}
});
recyclerView.addItemDecoration(headersDecor);
Thanks
import Pull to Refresh
Ultra Pull to Refresh for Android:https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh.
import sticky-headers-recyclerview
Sticky Headers decorator for Android's RecyclerView:https://github.com/timehop/sticky-headers-recyclerview
import expandable-recycler-view
A custom RecyclerView which allows for an expandable view to be attached to each ViewHolder:https://github.com/bignerdranch/expandable-recycler-view
Easy sidebar for RecyclerView
Easy sidebar for RecyclerView: https://github.com/CaMnter/EasyRecyclerViewSidebar
License
Copyright 2014, 2015, 2016 captain_miao
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.