MCPcopy Index your code
hub / github.com/bhargavms/DotLoader

github.com/bhargavms/DotLoader @1.1.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release 1.1.1 ↗ · + Follow
66 symbols 122 edges 10 files 11 documented · 17% updated 9y ago1.1.1 · 2017-05-29★ 1401 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

DotLoader

Release Android Arsenal Awesome


First, the gifs!

I am the one with constant Dots:

Sample Gif

You can add dots on the fly !

Sample Gif

And maybe create some cool animations like this?

Sample Gif

(This sucks but you get the idea :))

How to use.

Adding to your project

Currently only gradle supported

Add to your project level build.gradle's allprojects block like this

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

Next add to your module level (app) build.gradle's dependencies block like this

Check the releases section to get the version name for the latest release (i.e the name to replace X.X.X with)

dependencies {
    compile 'com.github.bhargavms:DotLoader:X.X.X'
}

You're all set, Now you can start using the DotLoader class.

Simple to use!

This works like any other view in android. You use it in your xml file like this

<com.bhargavms.dotloader.DotLoader
    android:id="@+id/text_dot_loader"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:color_array="@array/dot_colors"
    app:dot_radius="4dp"
    app:number_of_dots="3"/>

Now I will explain the 3 custom attributes here,

dot_radius

This is the main metric from which all sizes are calculated, if you were to provide wrap_content for layout_width and layout_height. You can, of course, provide your own height, in which case the animation might look horrible. You can also provide greater width than necessary, but the dots will not spread out to take up width (trust me doesn't look good).

number_of_dots

By default this is 1 (looks ridiculous I know but hey it is your choice!). So just provide the input here for whatever number of dots you want. (you can have a gazzillion, if you can fit in your phone screen xD)

color_array

Ah this is where I made the magic happen! Provide here a reference (like I have in the code above app:color_array="@array/dot_colors") to an array of colors which can be declared like so in your colors.xml file

<array name="dot_colors">
    <item>#03A9F4</item>
    <item>#E65100</item>
    <item>#FFBB00</item>
</array>

What this does is provide the DotLoader instance with a set colors through which the animation iterates over, looks neat don't you think?

OK Now a TIP!!

If you plan to increase the number of dots on the fly, please remember to call requestLayout() on the view, OR provide enough width before hand, then you don't have to call requestLayout() and make things choppy

Increasing and decreasing the DOTS on the fly! HOW?

Now for this the DotLoader class comes with the setNumberOfDots(int numberOfDots) method. Use this to change the number of dots to whatever you want on the fly and see the magic happen. In the demo app, I demonstrate this by changing the number of dots after a set period using the postDelayed() method from the View class.

dotLoader.postDelayed(new Runnable() {
    @Override
    public void run() {
        dotLoader.setNumberOfDots(5);
    }
}, 3000);
This library is heavily inspired by this design of Blake Manzo

Thats it! QuestionS? ask em in the issues section! Oh aren't I forgetting something? Ah License!

LICENSE

Apache 2.0

Core symbols most depended-on inside this repo

setColor
called by 4
library/src/main/java/com/bhargavms/dotloader/Dot.java
init
called by 4
library/src/main/java/com/bhargavms/dotloader/DotLoader.java
incrementColorIndex
called by 3
library/src/main/java/com/bhargavms/dotloader/Dot.java
setNumberOfDots
called by 3
library/src/main/java/com/bhargavms/dotloader/DotLoader.java
setColorIndex
called by 2
library/src/main/java/com/bhargavms/dotloader/Dot.java
resetColors
called by 2
library/src/main/java/com/bhargavms/dotloader/DotLoader.java
invalidateOnlyRectIfPossible
called by 2
library/src/main/java/com/bhargavms/dotloader/DotLoader.java
getCurrentColor
called by 1
library/src/main/java/com/bhargavms/dotloader/Dot.java

Shape

Method 53
Class 13

Languages

Java100%

Modules by API surface

library/src/main/java/com/bhargavms/dotloader/DotLoader.java25 symbols
sample/src/main/java/com/bhargavms/dotloader_sample/MainActivity.java9 symbols
library/src/main/java/com/bhargavms/dotloader/Dot.java9 symbols
library/src/main/java/com/bhargavms/dotloader/CubicBezierInterpolator.java7 symbols
library/src/main/java/com/bhargavms/dotloader/AnimationRepeater.java6 symbols
sample/src/test/java/com/bhargavms/dotloader_sample/ExampleUnitTest.java2 symbols
sample/src/main/java/com/bhargavms/dotloader_sample/DotLoaderApp.java2 symbols
sample/src/androidTest/java/com/bhargavms/dotloader_sample/ApplicationTest.java2 symbols
library/src/test/java/com/bhargavms/dotloader/ExampleUnitTest.java2 symbols
library/src/androidTest/java/com/bhargavms/dotloader/ApplicationTest.java2 symbols

For agents

$ claude mcp add DotLoader \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact