Convert Figma logo to code with AI

zzz40500 logoandroid-shapeLoadingView

高仿新版58 加载动画

1,788
414
1,788
8

Top Related Projects

DEPRECATED

Android loading animations

a simple loadingview for android with animation

1,228

Android loading view

Beautiful and smooth custom loading views

Quick Overview

android-shapeLoadingView is a custom Android loading view that displays animated shapes. It provides a visually appealing and customizable loading animation for Android applications, featuring various shapes like circles and triangles that transform and rotate.

Pros

  • Visually appealing and unique loading animation
  • Customizable shapes and colors
  • Easy to integrate into Android projects
  • Lightweight and efficient implementation

Cons

  • Limited to a specific set of predefined shapes
  • May not fit all app design aesthetics
  • Lacks advanced customization options for animation timing and behavior
  • Not actively maintained (last update was several years ago)

Code Examples

  1. Adding the ShapeLoadingView to your layout:
<com.mingle.widget.ShapeLoadingView
    android:id="@+id/shapeLoadingView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />
  1. Showing and hiding the loading view programmatically:
ShapeLoadingView shapeLoadingView = findViewById(R.id.shapeLoadingView);
shapeLoadingView.setVisibility(View.VISIBLE); // Show the loading view
shapeLoadingView.setVisibility(View.GONE); // Hide the loading view
  1. Customizing the loading view colors:
ShapeLoadingView shapeLoadingView = findViewById(R.id.shapeLoadingView);
shapeLoadingView.setLoadingColor(Color.RED);
shapeLoadingView.setBackgroundColor(Color.WHITE);

Getting Started

  1. Add the dependency to your app's build.gradle file:
dependencies {
    implementation 'com.github.zzz40500:android-shapeLoadingView:1.0.3.2'
}
  1. Add the ShapeLoadingView to your layout XML:
<com.mingle.widget.ShapeLoadingView
    android:id="@+id/shapeLoadingView"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />
  1. Use the ShapeLoadingView in your Activity or Fragment:
ShapeLoadingView shapeLoadingView = findViewById(R.id.shapeLoadingView);
shapeLoadingView.setVisibility(View.VISIBLE); // Show the loading view
// Perform your async task or loading operation
// When done, hide the loading view
shapeLoadingView.setVisibility(View.GONE);

Competitor Comparisons

DEPRECATED

Pros of AVLoadingIndicatorView

  • Offers a wider variety of loading indicator styles (26 different animations)
  • Provides more customization options for colors, sizes, and animation speeds
  • Has better documentation and usage examples

Cons of AVLoadingIndicatorView

  • Larger library size due to the numerous animation options
  • May require more setup and configuration for basic use cases
  • Less focused on a specific design aesthetic compared to android-shapeLoadingView

Code Comparison

AVLoadingIndicatorView:

AVLoadingIndicatorView avi = findViewById(R.id.avi);
avi.setIndicator("BallPulseIndicator");
avi.show();

android-shapeLoadingView:

ShapeLoadingDialog shapeLoadingDialog = new ShapeLoadingDialog(this);
shapeLoadingDialog.setLoadingText("Loading...");
shapeLoadingDialog.show();

AVLoadingIndicatorView offers more flexibility in choosing and customizing the indicator type, while android-shapeLoadingView provides a simpler API for a specific loading dialog style. AVLoadingIndicatorView is better suited for projects requiring diverse loading animations, whereas android-shapeLoadingView is ideal for quick implementation of a unique, shape-based loading indicator.

Android loading animations

Pros of Android-SpinKit

  • More diverse set of loading animations (12 different styles)
  • Better documentation and usage examples
  • Higher number of stars and forks on GitHub, indicating wider adoption

Cons of Android-SpinKit

  • Larger library size due to more animation options
  • May require more setup time to choose and implement desired animation style

Code Comparison

android-shapeLoadingView:

ShapeLoadingDialog shapeLoadingDialog = new ShapeLoadingDialog(this);
shapeLoadingDialog.setLoadingText("Loading...");
shapeLoadingDialog.show();

Android-SpinKit:

ProgressBar progressBar = findViewById(R.id.spin_kit);
Sprite doubleBounce = new DoubleBounce();
progressBar.setIndeterminateDrawable(doubleBounce);

Both libraries offer simple implementation, but Android-SpinKit provides more flexibility in choosing animation styles. android-shapeLoadingView focuses on a specific shape-changing animation, while Android-SpinKit offers a wider range of options.

Android-SpinKit is generally more feature-rich and widely adopted, making it a good choice for projects requiring diverse loading animations. However, android-shapeLoadingView may be preferable for simpler projects or those specifically seeking its unique shape-changing animation style.

a simple loadingview for android with animation

Pros of LoadingView

  • More diverse loading animations and styles (over 30 different types)
  • Customizable colors and sizes for loading indicators
  • Supports both determinate and indeterminate progress indicators

Cons of LoadingView

  • Larger library size due to more animations and features
  • Potentially more complex implementation for basic use cases
  • May have higher performance overhead for some animations

Code Comparison

LoadingView:

LVCircularRing loadingView = new LVCircularRing(this, null, 0);
loadingView.setViewColor(Color.rgb(255, 0, 0));
loadingView.setRoundColor(Color.rgb(255, 255, 255));
loadingView.startAnim();

android-shapeLoadingView:

ShapeLoadingDialog shapeLoadingDialog = new ShapeLoadingDialog(this);
shapeLoadingDialog.setLoadingText("Loading...");
shapeLoadingDialog.show();

LoadingView offers more customization options in its code, allowing developers to set specific colors and properties for the loading animation. android-shapeLoadingView provides a simpler implementation with fewer customization options out of the box.

Both libraries serve the purpose of displaying loading indicators, but LoadingView offers more variety and customization at the cost of increased complexity and potential performance impact. android-shapeLoadingView is more straightforward and lightweight, making it suitable for simpler use cases.

1,228

Android loading view

Pros of Loading

  • More customization options for loading animations
  • Supports both determinate and indeterminate progress
  • Includes additional utility classes for managing loading states

Cons of Loading

  • Larger library size due to more features
  • Slightly more complex implementation for basic use cases
  • May require more setup time for advanced customizations

Code Comparison

android-shapeLoadingView:

ShapeLoadingDialog shapeLoadingDialog = new ShapeLoadingDialog(this);
shapeLoadingDialog.setLoadingText("Loading...");
shapeLoadingDialog.show();

Loading:

AVLoadingIndicatorView avi = findViewById(R.id.avi);
avi.setIndicator("BallPulseIndicator");
avi.show();

Both libraries offer simple ways to implement loading animations, but Loading provides more flexibility in choosing and customizing indicators. android-shapeLoadingView focuses on a specific shape-changing animation, while Loading offers a wider variety of animation styles.

Loading allows developers to easily switch between different indicator types and customize their appearance, making it more versatile for various design requirements. However, this added flexibility comes at the cost of a larger library size and potentially more complex setup for advanced use cases.

android-shapeLoadingView, on the other hand, provides a more straightforward implementation for its specific animation style, which may be preferable for projects with simpler loading animation needs or those prioritizing a smaller library footprint.

Beautiful and smooth custom loading views

Pros of mkloader

  • More diverse loading animations, offering a wider variety of styles
  • Customizable colors and sizes for loader elements
  • Easier integration with minimal setup required

Cons of mkloader

  • Less focus on shape morphing animations compared to android-shapeLoadingView
  • May have higher memory usage due to more complex animations

Code Comparison

android-shapeLoadingView:

ShapeLoadingDialog shapeLoadingDialog = new ShapeLoadingDialog(this);
shapeLoadingDialog.setLoadingText("Loading...");
shapeLoadingDialog.show();

mkloader:

MKLoader mkLoader = findViewById(R.id.mkloader);
mkLoader.setVisibility(View.VISIBLE);

The android-shapeLoadingView requires creating a dialog and setting text, while mkloader can be directly added to the layout and controlled through visibility.

Summary

mkloader offers a broader range of loading animations and easier customization, making it more versatile for different app styles. However, android-shapeLoadingView excels in shape morphing animations, which may be preferable for specific design requirements. mkloader's implementation is generally simpler, but it might consume more resources for complex animations. The choice between the two depends on the specific needs of the project, such as design preferences, performance considerations, and ease of integration.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

#效果图先行#

58同城效果

实现的效果

#地址:# github 直达

Android Arsenal ###gradle
/build.gradle

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

/app/build.gradle

dependencies {
	        compile 'com.github.zzz40500:android-shapeLoadingView:1.0.3.2'
	}

#usage#

布局上


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" 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" tools:context=".MainActivity">

    <com.mingle.widget.LoadingView
        android:id="@+id/loadView"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"/>
</RelativeLayout>

动画自动加载