Giter VIP home page Giter VIP logo

lineartimer's Introduction

Linear Timer

Linear Timer is a custom view for Android that enables circular progress animation with respect to given duration.

Android Arsenal

Screenshot

Setup

Setup is pretty straight forward. In your root 'build.gradle' add the following -

allprojects {
  repositories {
      jcenter()
      maven { url "https://jitpack.io" }
  }
}

And, in your app 'build.gradle' add this -

 compile 'com.github.krtkush:LinearTimer:v1.0.0'

under dependencies.

Usage

First, you need the following view in your layout XML -

xmlns:timer="http://schemas.android.com/apk/res-auto"
  
<io.github.krtkush.lineartimer.LinearTimerView
  android:id="@+id/linearTimer"
  android:layout_centerInParent="true"
  android:layout_width="120dp"
  android:layout_height="120dp"
  timer:radius="20dp"
  timer:strokeWidth="3dp"
  timer:startingPoint="270"
  timer:preFillPoint="0" />

Here is a list of attributes available to toggle the LinearTimer's basic style -

  1. radius - The radius of the circle.
  2. strokeWidth - the thickness of the circle boundary.
  3. startingPoint88 - The angle from where, in the timer, you want the animation to start. 270 is the 12 O'Clock position.
  4. preFillPoint - The angle up-till which you want the circle to be pre-filled.
  5. initialColor - The initial color of the circle.
  6. progressColor - The color of the prgress arc that animates over the initial color.

After adding the view, here is how the View is initiaized and used -

 LinearTimerView linearTimerView = (LinearTimerView) findViewById(R.id.linearTimer);
 LinearTimer linearTimer = new LinearTimer(linearTimerView);
 
 linearTimer.startTimer(360, 60 * 1000);

Contribution

Any kind of contribution will be appreciated; feel free to create a pull request or file issues on the issue tracker. If you'd like to contact me, you can reach me at kartikey92[at]gmail.com.

lineartimer's People

Contributors

krtkush avatar

Watchers

James Cloos avatar dev.with avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.