Skip to content

A simple and flexible Fillable Progress Layout written in Kotlin (Before AndroidX)

License

Notifications You must be signed in to change notification settings

JDevZone/FillProgressLayoutSupport

Repository files navigation

👻 Un-Maintained, Use AndroidX Version Instead

FillProgressLayoutSupport

🔥A simple and flexible Fill Progress Layout written in Kotlin (Before AndroidX) 🔥


GitHub license GitHub code size in bytes

AndroidX alternative is available here


Installation

  1. Add it in your root build.gradle at the end of repositories:
	allprojects {
		repositories {
			...
			maven { url 'https://jitpack.io' }
		}
	}
  1. Add the dependency in app gradle
	dependencies {
	        implementation 'com.github.JDevZone:FillProgressLayoutSupport:{latest_version}'
	}

Basic usage

As FillProgressLayout is direct child of LinearLayout you can replace LinearLayout with it as follows

<com.devzone.fillprogresslayout.FillProgressLayout
            android:id="@+id/fillL"
            android:layout_margin="30dp"
            app:fpl_backgroundColor="@color/colorRedTrans"
            app:fpl_progressColor="@color/colorGreenTrans"
            app:fpl_isRounded="false"
            app:fpl_progress="0"
            app:fpl_progressDuration="3000"
            app:fpl_progressDirection="left_to_right"
            app:fpl_shouldRestart="false"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
        <--childviews-->
    </com.devzone.fillprogresslayout.FillProgressLayout>

Alternatively

You can use FillProgressLayout as background for other layouts.

<RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
  
        <--as background for AppCompatTextView-->
        <com.devzone.fillprogresslayout.FillProgressLayout
                android:layout_alignBottom="@+id/tv"
                android:layout_alignParentTop="true"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"/>

        <androidx.appcompat.widget.AppCompatTextView
                android:id="@+id/tv"
                android:text="@string/app_name"
                android:gravity="center"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"/>
    </RelativeLayout>

Samples

Fill Direction Demo

Left To Right

Right To Left

Top To Bottom

Bottom To Top

Additional Rounded Corners sample

Customisation

Here are the attributes you can specify through XML or related setters programatically:

  • fpl_backgroundColor - Set background color.
  • fpl_progressColor - Set progress color.
  • fpl_isRounded - Set true if you need rounded corners.
  • fpl_roundedCornerRadius - Set radius for round corners.
  • fpl_progress - Set current progress.
  • fpl_progressDuration - Set fill duration.
  • fpl_shouldRestart - Set if progress filling should restart from 0.
  • fpl_progressDirection - Set fill direction. i.e. left_to_right,right_to_left,top_to_bottom or bottom_to_top

📄 License

Checkable TextView is released under the MIT license. See LICENSE for details.

About

A simple and flexible Fillable Progress Layout written in Kotlin (Before AndroidX)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages