A 'Google Fit' like activity indicator for Android

Overview

WheelIndicatorView Build Status Android Arsenal Download

A 'Google Fit' like activity indicator for Android

Screenshots

Image

Usage

How to use:

  • Add a "WheelIndicatorView" in the layout editor like you actually do with a button for example
 <com.dlazaro66.wheelindicatorview.WheelIndicatorView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/wheel_indicator_view"
        app:itemsLineWidth="13dp"
        app:filledPercent="40"
        app:backgroundColor="@color/white"
        />
  • You can set different attributes just as:

    • Lines size: WheelIndicatorView:itemsLineWidth
    • Inner circle background color: WheelIndicatorView:backgroundColor
    • % of circle filled: WheelIndicatorView:filledPercent
  • Also, you can declare it programmatically:

 WheelIndicatorView wheelIndicatorView = new WheelIndicatorView(context);
  • Then add elements to the indicator view, declaring as many WheelIndicatorItem objects as you want:
 WheelIndicatorItem bikeActivityIndicatorItem = new WheelIndicatorItem(1.5f , Color.parseColor("#FF5722"));
  • Every WheelIndicatorItem should have a weight and the chart will draw it as needed, comparing all data set.

  • If data set changed, you should call wheelIndicatorView.notifyDataSetChanged() as you would do with an adapter.

  • Animate the chart once you added all your elements with wheelIndicatorView.startItemsAnimation()

  • If you don't want your chart to be completed at 100% (for example if you're representing user fitness activity and daily target is only done at 35%) you should call wheelIndicatorView.setFilledPercent(35)

Add it to your project

Add WheelIndicatorView dependency to your build.gradle

dependencies{
    compile 'com.dlazaro66.wheelindicatorview:WheelIndicatorView:1.0.0'
}

Do you want to contribute?

Please send a PR or open an issue with your comments!

Developed By

Follow me on Twitter Add me to Linkedin

Who's using it

Does your app use WheelIndicatorView? If you want to be featured on this list drop me a line.

Contributors

License

Copyright 2015 David Lázaro

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.
Comments
  • Dark shadow left at the end while using using light and dark version of same color.

    Dark shadow left at the end while using using light and dark version of same color.

    I am drawing two arc in WheelIndicatorView using following color codes #cc0000(dark red) & #66cc0000(light red). I have added dark red first and then light red but there is a dot(.) with dark red color left at the end(see the attachment). Below is my code -

        verifiedWheel = new WheelIndicatorItem(verified , getResources().getColor(R.color.red));
       mWheelIndicatorView.addWheelIndicatorItem(20);
    
        connectedWheel = new WheelIndicatorItem(connected ,              getResources().getColor(R.color.light_red));
        mWheelIndicatorView.addWheelIndicatorItem(50);
    
        mWheelIndicatorView.setFilledPercent(70);
        mWheelIndicatorView.startItemsAnimation();
    

    device-2015-10-15-125922

    opened by AdarshYadav 5
  • Item gradient color

    Item gradient color

    Added the possibility to use a gradient color on a wheelItem. Also the color/gradients of the itens can be changed at runtime. The example shows one item with a gradient color that changes when the user touches the wheel view.

    opened by marciogranzotto 0
  • WheelIndicatorView not successfully displaying inside ScrollView

    WheelIndicatorView not successfully displaying inside ScrollView

    I intend to try and display a few WheelIndicatorViews below one another in a scrolling layout, however I can only manage to actually get one on the screen and even then it stops the layout scrolling. Here is the XML that I have used for my layout but just no luck:

    <?xml version="1.0" encoding="utf-8"?>
    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:fillViewport="true">
    
        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical">
    
            <com.dlazaro66.wheelindicatorview.WheelIndicatorView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:id="@+id/wheel_indicator_view"
                app:itemsLineWidth="13dp" />
    
            <com.dlazaro66.wheelindicatorview.WheelIndicatorView
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:id="@+id/wheel_indicator_view2"
                app:itemsLineWidth="13dp" />
    
        </LinearLayout>
    </ScrollView>
    
    opened by edwoollard 0
  • Default animation is quite slow when it's about to end

    Default animation is quite slow when it's about to end

    I noticed that the default animation goes from very smooth at the start to super jerky when it's about to end. It would be nice if the animation was smooth during the entire duration. Tested on my Nexus 5.

    Very nice library by the way!

    opened by EdwardvanRaak 1
  • drop frames

    drop frames

    first of all, thanks for your endeavor, and this lib is of great help. However, I encountered frame drop problem. Here is the situation, I used several fragments with WheelIndicatorView, and when I, unfortunately , try to change my fragment, it drops even hundreds of frames shown in the logcat. And I believe it must be the animation of wheelindicatorview that reduced the performance. And thanks ahead.

    opened by AaronVon 1
Owner
David Lázaro
Software Engineer, Android developer @blinkist
David Lázaro
MaterialLoadingProgressBar provide a styled ProgressBar which looks like SwipeRefreshLayout's loading indicator(support-v4 v21+)

MaterialLoadingProgressBar MaterialLoadingProgressBar provide a styled ProgressBar which looks like SwipeRefreshLayout's loading indicator(support-v4

lsjwzh 1.1k Nov 19, 2022
Android AlertDialog with moving dots progress indicator

Spots progress dialog Android AlertDialog with moving spots progress indicator packed as android library. =========== Usage The library available in m

Maksym Dybarskyi 1.1k Dec 26, 2022
Android - An action bar item which acts both as a refresh button and as a progress indicator

RefreshActionItem An action bar item that implements this common pattern: Initially it shows a refresh button. If the button is clicked, a background

Manuel Peinado Gallego 655 Nov 10, 2022
:barber: [Android Library] Stacked dual progress indicator progress-bar

StackedHorizontalProgressBar Specs Featured in Show some ❤️ Android library with ability to show two progress indicators in one horizontal progress ba

Nishant Srivastava 98 Nov 11, 2022
A lightweight circular indicator view library for Android

A lightweight circular indicator view library for Android

İbrahim Süren 241 Dec 30, 2022
A rubber indicator

RubberIndicator A rubber indicator for ViewPager Designed by Valentyn Khenkin Here is the CSS version Usage The attributes for RubberIndicator are not

Fei Liang 1.6k Dec 16, 2022
This lib can be used for viewpager infinite loop with indicator easily.

InfiniteIndicator This project is inspired by the android-auto-scroll-view-pager of Trinea. Use the salvage lib implement view recycle adapter.It cont

lightSky 489 Sep 8, 2022
A rubber indicator

RubberIndicator A rubber indicator for ViewPager Designed by Valentyn Khenkin Here is the CSS version Usage The attributes for RubberIndicator are not

Fei Liang 1.6k Dec 16, 2022
Android library to display progress like google does in some of his services.

GoogleProgressBar This library is not maintained anymore and there will be no further releases Android library to display different kind of google rel

JPARDOGO 1.3k Dec 27, 2022
Android loading or progress dialog widget library, provide efficient way to implement iOS like loading dialog and progress wheel

ACProgressLite English Version / 中文版本 An Android loading widget library. Lite and easy to use, strong customizability. Can be used to implement 'iOS'

Cloudist Technology Co., Ltd. 234 Nov 24, 2022
:seedling: A custom loading view for android, just like alipay.

#SmileyLoadingView A custom loading view, just like alipay. Usage Edit your layout XML: <cn.refactor.smileyloadingview.lib.SmileyLoadingView

null 411 Apr 24, 2022
IOSProgressBar is a progress-bar lib for android. And the progress-bar looks like iOS system style

IOSProgressBar is a progress-bar lib for android. And the progress-bar looks like iOS system style

heyangyang 6 Aug 25, 2022
Progress Button is a android library for hanling different types state like active, finished, enabled, disabled and reset with a single line of code.

Progress Button is a android library for hanling different types state like active, finished, enabled, disabled and reset with a single line of code.

Sagar Khurana 38 Nov 15, 2022
A wave-like loading drawable

#WaveLoading This library provides a wave loading animation as a Drawable. How to use Add dependency: compile 'com.race604.waveloading:library:1.1.1'

吴晶 1.4k Dec 5, 2022
A simple lib to create a ring-like progress view with corner edges

ProgressRingView Installation Gradle: dependencies { compile 'com.github.flepsik:progress-ring-view:1.2.1' } Maven: <dependency> <groupId>com.g

null 71 Dec 5, 2021
MusicBar 2.1 0.0 Java view visualize progress bar for sound file like sound cloud

MusicBar Setup dependencies { implementation 'com.oze.music:MusicBar:1.0.5' } Usage Function Description setAnimationChangeListener(OnMusicBarAn

emad 74 Aug 26, 2022
Simple Progress View that you can compare things, like statistics of a Football match

Simple Progress View that you can compare things, like statistics of a Football match

Kostas Antoniou 29 Jun 8, 2022
An instagram-like segmented progress bar

An instagram-like segmented progress bar

Tiago Ornelas 286 Jan 6, 2023
[Android] Round Corner Progress Bar Library for Android

RoundCornerProgressBar Round corner is cool. Let's make your progress bar to round corner Colorful progress bar with round corner on progress which yo

Akexorcist 2.3k Dec 31, 2022