All Projects → volsahin → volx-recyclerview-fast-scroll

volsahin / volx-recyclerview-fast-scroll

Licence: other
An easy to use implementation for fast scroll recyclerview

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to volx-recyclerview-fast-scroll

Infinitescroll
Infinite Scroll (Endless Scrolling) for RecyclerView in Android
Stars: ✭ 183 (+438.24%)
Mutual labels:  recyclerview, scrolling, scroll
Recyclerview Fastscroller
A fully customizable Fast Scroller for the RecyclerView in Android, written in Kotlin
Stars: ✭ 585 (+1620.59%)
Mutual labels:  recyclerview, scrolling, scroll
Android scroll endless
Scroll endless for Android recyclerview
Stars: ✭ 12 (-64.71%)
Mutual labels:  recyclerview, scrolling, scroll
jquery-alphaindex
jQuery plugin to create alphabetical indexes for your lists
Stars: ✭ 12 (-64.71%)
Mutual labels:  alphabet, letters, alphabetical-indexes
Snappyrecyclerview
An extension to RecyclerView which will snap to child Views to the specified anchor, START, CENTER or END.
Stars: ✭ 178 (+423.53%)
Mutual labels:  recyclerview, scroll
Recyclerviewpresenter
RecyclerView Adapter Library with different models and different layouts as convenient as possible.
Stars: ✭ 86 (+152.94%)
Mutual labels:  recyclerview, sort
Sortrecyclerviewlist
Recyclerview实现字母排序,过滤搜索,顶部悬浮,波浪形的侧边栏
Stars: ✭ 179 (+426.47%)
Mutual labels:  recyclerview, sort
react-scroll-trigger
📜 React component that monitors scroll events to trigger callbacks when it enters, exits and progresses through the viewport. All callback include the progress and velocity of the scrolling, in the event you want to manipulate stuff based on those values.
Stars: ✭ 126 (+270.59%)
Mutual labels:  scrolling, scroll
ClockScroller
A cool animated RecyclerView clock face scroller handle inspired by the following MaterialUp submission - https://material.uplabs.com/posts/codepen-scrolling-clock
Stars: ✭ 75 (+120.59%)
Mutual labels:  recyclerview, scroll
react-is-scrolling
Simply detect if users are scrolling in your components in a declarative API
Stars: ✭ 17 (-50%)
Mutual labels:  scrolling, scroll
onscroll-effect
A tiny JavaScript library to enable CSS animations when user scrolls.
Stars: ✭ 35 (+2.94%)
Mutual labels:  scrolling, scroll
react-smart-scroll
Efficient rendering of long lists in React
Stars: ✭ 27 (-20.59%)
Mutual labels:  scrolling, scroll
homoglyphs
Homoglyphs: get similar letters, convert to ASCII, detect possible languages and UTF-8 group.
Stars: ✭ 70 (+105.88%)
Mutual labels:  alphabet, letters
really-smooth-scroll
A script that smoothen scrolling in the browser
Stars: ✭ 21 (-38.24%)
Mutual labels:  scrolling, scroll
Recycler Fast Scroll
Provides fast scroll and section idexer for recycler view
Stars: ✭ 445 (+1208.82%)
Mutual labels:  recyclerview, scrolling
scroll-sync-react
A scroll syncing library for react that is up to date
Stars: ✭ 49 (+44.12%)
Mutual labels:  scrolling, scroll
Moveto
A lightweight scroll animation javascript library without any dependency
Stars: ✭ 2,746 (+7976.47%)
Mutual labels:  scrolling, scroll
react-recycled-scrolling
Simulate normal scrolling by using only fixed number of DOM elements for large lists of items with React Hooks
Stars: ✭ 26 (-23.53%)
Mutual labels:  recyclerview, scrolling
NoobScroll
A lightweight jQuery Plugin that add some cool function to make scrolling more fun [Archive]
Stars: ✭ 43 (+26.47%)
Mutual labels:  scrolling, scroll
EasyScrollDots
Single page scroll JavaScript plugin that allows for vertical navigation of page sections
Stars: ✭ 38 (+11.76%)
Mutual labels:  scrolling, scroll

volx-recyclerview-fast-scroll

An easy to use implementation for fast scroll recyclerview

alt tag alt tag

Usage

Minimal working example

In your adapter file implement IVolxAdapter and return your data as a list of objects:

public class UsersOwnAdapter extends RecyclerView.Adapter<UsersOwnAdapter.ViewHolder> implements IVolxAdapter<UserModel> {

    private List<UserModel> mDataset;

    @Override
    public List<UserModel> getList() {
        return mDataset;
    }

In your model file add @ValueArea annotation for the field that be rendered as a fast-scroll list

public class UserModel {

    private int example;
    
    @ValueArea
    private String name;
}

In your activity/fragment or wherever you have reference of your parent frame layout and your recyclerview:

         new Volx.Builder()
                .setUserRecyclerView(mRecyclerView)
                .setParentLayout(parentLayout)
                .build();

Don't forget to sort your list before building Volx

More On Customization

If you want to customize colors, text sizes and layout sizes you can call it like:

	new Volx.Builder()
                .setUserRecyclerView(mRecyclerView)
                .setParentLayout(parentLayout)
                .setActiveColor(Color.CYAN) // the lightened color of right bar
                .setBackgroundColor(Color.BLACK) // the color of right bar
                .setTextColor(Color.WHITE) // the color of right bar letters
                .setBarWidth(24) // the width of right bar in dp
                .setBarHeightRatio(1f) // the height of right bar between 0 and 1 according to screen height
                .setTextSize(Volx.FIT_NICELY) // the size of letters in right bar, FIT_NICELY handles it well , other values are also ok
                .setMiddleTextSize(16) // the size of the letter in center circle
                .setMiddleLayoutSize(48) // the size of the center circle in dp
                .setMiddleBackgroundColor(Color.rgb(67, 67, 67)) // the color of the center circle
                .setMiddleTextColor(Color.WHITE)  // the color of the letter in center circle
                .setMiddleStrokeWidth(4) // the width of center circle stroke in dp
                .setMiddleStrokeColor(Color.BLACK) // the color of right bar stroke
                .setRightStrokeWidth(3) // the width of right bar stroke in dp
                .setRightStrokeColor(Color.rgb(204, 204, 204)) // the color of middle circle stroke
                .setMinItem(0) // the min amount of item required to show right bar
                .setDelayMillis(3000) // the amount of time if there is no interaction on right bar, Volx.NEVER_CLOSE for never close
                .build();

If you want to make volx invisible and remove it's listeners you can call method with your object:

	volx.setInactive(true);

Later you can activate volx again:

	if (volx.isInactive())
            volx.setInactive(false);

If your data updated , sort your data again and call the notifyValueDataChanged method:

	volx.notifyValueDataChanged();

Apps in volx-fast-scroll use

General Mobile Music Player

A nice featured cool music player from General Mobile. You can download it from here

Download

Step 1. Add the JitPack repository to your build file

Add it in your root build.gradle at the end of repositories:

	allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}

Step 2. Add the dependency

	dependencies {
		compile 'com.github.volsahin:volx-recyclerview-fast-scroll:v1.0.8'
	}
  

License

Copyright 2017 Volkan Şahin

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.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].