MCPcopy Index your code
hub / github.com/elye/loaderviewlibrary

github.com/elye/loaderviewlibrary @3.0.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release 3.0.0 ↗ · + Follow
62 symbols 126 edges 10 files 4 documented · 6%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Loader View for Android

Android Arsenal

What It Is

Provide both TextView and ImageView the ability to show shimmer (animation loader) before any text or image is shown. Useful when waiting for data to be loaded from the network. Example below

Loader Image

Features / Usage

  1. Loader View for TextView defined in layout XML xml <com.elyeproj.loaderviewlibrary.LoaderTextView android:layout_width="match_parent" android:layout_height="wrap_content" />

  2. Loader View for ImageView defined in layout XML xml <com.elyeproj.loaderviewlibrary.LoaderImageView android:layout_width="100dp" android:layout_height="100dp" />

  3. Define the % width of the TextView that shows the loading animation with width_weight xml <com.elyeproj.loaderviewlibrary.LoaderTextView android:layout_width="match_parent" android:layout_height="wrap_content" app:width_weight="0.4" />

  4. Define the % height of the TextView that shows the loading animation with height_weight xml <com.elyeproj.loaderviewlibrary.LoaderTextView android:layout_width="match_parent" android:layout_height="wrap_content" app:height_weight="0.8" />

  5. Define use gradient of the TextView or ImageView that shows the gradient with use_gradient xml <com.elyeproj.loaderviewlibrary.LoaderTextView android:layout_width="match_parent" android:layout_height="wrap_content" app:use_gradient="true" />

  6. Define rectangle round radius using corner. The default corner is 0. xml <com.elyeproj.loaderviewlibrary.LoaderTextView android:layout_width="match_parent" android:layout_height="wrap_content" app:corners="16" />

  7. Setting the Text Style as BOLD would darken the loading shimmer

  8. Other feature of TextView and ImageView is still applicable.

  9. Use a custom shimmer color (note: if set, point 7 will not apply, your color will be used even if the Text Style is BOLD) xml <com.elyeproj.loaderviewlibrary.LoaderTextView android:layout_width="match_parent" android:layout_height="wrap_content" app:custom_color="@android:color/holo_green_dark" />

  10. Reset and show shimmer (animation loader) again by calling the below API java myLoaderTextView.resetLoader(); myLoaderImageView.resetLoader();

Requirement

Android SDK API Version 15 and above.

Importing the Library

On your root build.gradle, add mavenCentral() to the allprojects section. On your module build.gradle, add

dependencies {
    implementation 'io.github.elye:loaderviewlibrary:3.0.0'
}

What's new in 3.0.0

  1. Moved from JCenter to mavenCenter
  2. Fix some null crash issue

Note: only version 3.0.0 has been moved to mavenCenter

What's new in 2.0.0

  1. Migrate to AndroidX
  2. Fix issue of preventing partial overlay if view reused quickly in RecyclerView

What's new in 1.5.0

  1. Add custom color attribute

Licence

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this work except in compliance with the License. You may obtain a copy of the License in the LICENSE file, or 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.

Extension points exported contracts — how you extend this code

Core symbols most depended-on inside this repo

setText
called by 5
loaderviewlibrary/src/main/java/com/elyeproj/loaderviewlibrary/LoaderTextView.java
stopLoading
called by 5
loaderviewlibrary/src/main/java/com/elyeproj/loaderviewlibrary/LoaderController.java
init
called by 3
loaderviewlibrary/src/main/java/com/elyeproj/loaderviewlibrary/LoaderImageView.java
init
called by 3
loaderviewlibrary/src/main/java/com/elyeproj/loaderviewlibrary/LoaderTextView.java
startLoading
called by 3
loaderviewlibrary/src/main/java/com/elyeproj/loaderviewlibrary/LoaderController.java
loadData
called by 2
app/src/main/java/com/elyeproj/sampleloaderview/MainActivity.java
init
called by 2
loaderviewlibrary/src/main/java/com/elyeproj/loaderviewlibrary/LoaderController.java
setUseGradient
called by 2
loaderviewlibrary/src/main/java/com/elyeproj/loaderviewlibrary/LoaderController.java

Shape

Method 51
Class 10
Interface 1

Languages

Java100%

Modules by API surface

loaderviewlibrary/src/main/java/com/elyeproj/loaderviewlibrary/LoaderController.java16 symbols
loaderviewlibrary/src/main/java/com/elyeproj/loaderviewlibrary/LoaderImageView.java13 symbols
loaderviewlibrary/src/main/java/com/elyeproj/loaderviewlibrary/LoaderTextView.java10 symbols
app/src/main/java/com/elyeproj/sampleloaderview/MainActivity.java10 symbols
loaderviewlibrary/src/main/java/com/elyeproj/loaderviewlibrary/LoaderView.java4 symbols
loaderviewlibrary/src/test/java/com/elyeproj/loaderviewlibrary/ExampleUnitTest.java2 symbols
loaderviewlibrary/src/androidTest/java/com/elyeproj/loaderviewlibrary/ApplicationTest.java2 symbols
app/src/test/java/com/elyeproj/sampleloaderview/ExampleUnitTest.java2 symbols
app/src/androidTest/java/com/elyeproj/sampleloaderview/ApplicationTest.java2 symbols
loaderviewlibrary/src/main/java/com/elyeproj/loaderviewlibrary/LoaderConstant.java1 symbols

For agents

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

⬇ download graph artifact