diff --git a/README.md b/README.md index 31c78f6..d7a3e07 100644 --- a/README.md +++ b/README.md @@ -37,12 +37,16 @@ latest version : [ ![Download](https://api.bintray.com/packages/agrawalsuneet/an ![arcprogressloader](https://user-images.githubusercontent.com/12999622/45809206-3fe05800-bce5-11e8-90ef-f68e46de64cc.gif) +### FidgetLoader +![fidgetloader](https://user-images.githubusercontent.com/12999622/45921114-dfac0a80-becc-11e8-8a1e-8c8d78c31dd4.gif) + + Check all other loaders [here](https://agrawalsuneet.github.io/agrawalsuneet/opensourcecontribution/) ## How To use include below dependency in build.gradle of application and compile it ``` -implementation 'com.agrawalsuneet.androidlibs:loaderspack:0.7' +implementation 'com.agrawalsuneet.androidlibs:loaderspack:0.8' ``` ### ClockLoader @@ -396,6 +400,50 @@ implementation 'com.agrawalsuneet.androidlibs:loaderspack:0.7' ``` +##### Through XML +``` + +``` +##### Through Code +* Kotlin +``` + val fidgetLoader = FidgetLoader(this, + 20, + ContextCompat.getColor(this, R.color.blue_selected), + ContextCompat.getColor(this, R.color.amber)) + .apply { + animDuration = 3000 + noOfRotation = 1 + interpolator = BounceInterpolator() + } + + containerLayout.addView(fidgetLoader) +``` + +* Java +``` + FidgetLoader fidgetLoader = new FidgetLoader(this, + 20, + ContextCompat.getColor(this, R.color.blue_selected), + ContextCompat.getColor(this, R.color.amber)); + + fidgetLoader.setAnimDuration(3000); + fidgetLoader.setNoOfRotation(1); + fidgetLoader.setInterpolator(new BounceInterpolator()); + + container.addView(fidgetLoader); +``` + + +### FidgetLoader ##### Through XML ``` diff --git a/app/src/main/res/layout/activity_main_circular_rotating.xml b/app/src/main/res/layout/activity_main_circular_rotating.xml index db9c270..8e28262 100644 --- a/app/src/main/res/layout/activity_main_circular_rotating.xml +++ b/app/src/main/res/layout/activity_main_circular_rotating.xml @@ -70,7 +70,7 @@ app:rotatingsticks_innerCircleRadius="60dp" app:rotatingsticks_noOfSticks="50" app:rotatingsticks_outerCircleRadius="80dp" - app:rotatingsticks_stickColor="@color/grey" + app:rotatingsticks_stickColor="@android:color/darker_gray" app:rotatingsticks_viewBackgroundColor="@color/white" /> \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main_clock.xml b/app/src/main/res/layout/activity_main_clock.xml index 2288073..cf7df6c 100644 --- a/app/src/main/res/layout/activity_main_clock.xml +++ b/app/src/main/res/layout/activity_main_clock.xml @@ -32,15 +32,15 @@ android:layout_height="wrap_content" app:clock_animSpeedMultiplier="0.5" android:layout_margin="16dp" - app:clock_bigCircleColor="@color/black" + app:clock_bigCircleColor="@android:color/black" app:clock_bigCircleRadius="100dp" - app:clock_hourHandColor="@color/grey" + app:clock_hourHandColor="@android:color/darker_gray" app:clock_hourHandLength="50dp" - app:clock_innerCircleColor="@color/grey" + app:clock_innerCircleColor="@android:color/darker_gray" app:clock_innerCircleRadius="5dp" - app:clock_minuteHandColor="@color/grey" + app:clock_minuteHandColor="@android:color/darker_gray" app:clock_minuteHandLength="80dp" - app:clock_outerCircleBorderColor="@color/grey" + app:clock_outerCircleBorderColor="@android:color/darker_gray" app:clock_outerCircleBorderWidth="10dp" /> diff --git a/app/src/main/res/layout/activity_main_multipleripple.xml b/app/src/main/res/layout/activity_main_multipleripple.xml index 4ec98ea..ef738c0 100644 --- a/app/src/main/res/layout/activity_main_multipleripple.xml +++ b/app/src/main/res/layout/activity_main_multipleripple.xml @@ -91,7 +91,7 @@ android:layout_height="wrap_content" android:layout_centerInParent="true" app:multipleripple_animDuration="4000" - app:multipleripple_circleColor="@color/grey" + app:multipleripple_circleColor="@android:color/darker_gray" app:multipleripple_circleInitialRadius="36dp" app:multipleripple_fromAlpha="0.6" app:multipleripple_interpolator="@android:anim/linear_interpolator" diff --git a/app/src/main/res/layout/main_curves.xml b/app/src/main/res/layout/main_curves.xml index 1d5bd52..55b4348 100644 --- a/app/src/main/res/layout/main_curves.xml +++ b/app/src/main/res/layout/main_curves.xml @@ -71,7 +71,7 @@ android:layout_height="wrap_content" android:layout_margin="16dp" app:curves_animDuration="1000" - app:curves_curveColor="@color/grey" + app:curves_curveColor="@android:color/darker_gray" app:curves_curveSweepAngle="150" app:curves_curveWidth="5dp" app:curves_distanceBetweenCurves="5dp" diff --git a/app/src/main/res/layout/main_fidget.xml b/app/src/main/res/layout/main_fidget.xml new file mode 100644 index 0000000..d473ea8 --- /dev/null +++ b/app/src/main/res/layout/main_fidget.xml @@ -0,0 +1,76 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index f899f3d..fb83572 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -13,11 +13,14 @@ #FFC200 #77FFC200 + #0000ff #2196F3 #BBDEFB #55A9A9A9 + #8B008B + @color/red @@ -34,7 +37,7 @@ @color/red @color/amber @color/green - @color/grey + @android:color/darker_gray diff --git a/loaderspack/build.gradle b/loaderspack/build.gradle index 97d19b2..fdeca48 100644 --- a/loaderspack/build.gradle +++ b/loaderspack/build.gradle @@ -8,7 +8,7 @@ repositories { ext { PUBLISH_GROUP_ID = 'com.agrawalsuneet.androidlibs' PUBLISH_ARTIFACT_ID = 'loaderspack' - PUBLISH_VERSION = '0.7' + PUBLISH_VERSION = '0.8' } android { @@ -19,8 +19,8 @@ android { defaultConfig { minSdkVersion 16 targetSdkVersion 27 - versionCode 7 - versionName "0.7" + versionCode 8 + versionName "0.8" } buildTypes { diff --git a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/basicviews/ArcView.kt b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/basicviews/ArcView.kt index 3eaea19..ffe2d52 100644 --- a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/basicviews/ArcView.kt +++ b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/basicviews/ArcView.kt @@ -21,7 +21,7 @@ class ArcView : View { var sweepAngle: Float = 180.0f - var arcColor: Int = resources.getColor(R.color.red) + var arcColor: Int = resources.getColor(android.R.color.holo_red_dark) var drawOnlyStroke: Boolean = true private val paint: Paint = Paint() @@ -64,7 +64,7 @@ class ArcView : View { this.startAngle = typedArray.getFloat(R.styleable.ArcView_startAngle, 0.0f) this.sweepAngle = typedArray.getFloat(R.styleable.ArcView_sweepAngle, 180.0f) - this.arcColor = typedArray.getColor(R.styleable.ArcView_arcColor, resources.getColor(R.color.red)) + this.arcColor = typedArray.getColor(R.styleable.ArcView_arcColor, resources.getColor(android.R.color.holo_red_dark)) this.drawOnlyStroke = typedArray.getBoolean(R.styleable.ArcView_drawOnlyStroke, true) diff --git a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/basicviews/CircularSticksBaseView.kt b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/basicviews/CircularSticksBaseView.kt index 442eccf..e9872f8 100644 --- a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/basicviews/CircularSticksBaseView.kt +++ b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/basicviews/CircularSticksBaseView.kt @@ -19,7 +19,7 @@ open class CircularSticksBaseView : View, LoaderContract { var outerCircleRadius: Float = 200.0f var innerCircleRadius: Float = 100.0f - open var sticksColor: Int = resources.getColor(R.color.grey) + open var sticksColor: Int = resources.getColor(android.R.color.darker_gray) var viewBackgroundColor: Int = resources.getColor(android.R.color.white) protected lateinit var sticksPaint: Paint @@ -64,7 +64,7 @@ open class CircularSticksBaseView : View, LoaderContract { this.sticksColor = typedArray - .getColor(R.styleable.CircularSticksBaseView_sticksbase_stickColor, resources.getColor(R.color.grey)) + .getColor(R.styleable.CircularSticksBaseView_sticksbase_stickColor, resources.getColor(android.R.color.darker_gray)) this.viewBackgroundColor = typedArray .getColor(R.styleable.CircularSticksBaseView_sticksbase_viewBackgroundColor, resources.getColor(android.R.color.white)) diff --git a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/basicviews/FidgetView.kt b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/basicviews/FidgetView.kt new file mode 100644 index 0000000..e70c06e --- /dev/null +++ b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/basicviews/FidgetView.kt @@ -0,0 +1,116 @@ +package com.agrawalsuneet.loaderspack.basicviews + +import android.content.Context +import android.graphics.Canvas +import android.graphics.Paint +import android.util.AttributeSet +import android.view.View +import com.agrawalsuneet.loaderspack.R + +/** + * Created by agrawalsuneet on 9/20/18. + */ + +class FidgetView : View { + + companion object { + const val distanceFactor = 0.8 + } + + var fidgetRadius: Int = 100 + var bodyColor: Int = resources.getColor(android.R.color.holo_red_light) + var sideCirclesColor = resources.getColor(android.R.color.darker_gray) + + private val centerPaint: Paint = Paint() + private val sidesPaint: Paint = Paint() + + private var calWidthHeight = 0.0f + + private val sin30 = 0.5 + private val cos30 = 0.866 + + constructor(context: Context) : super(context) { + initValues() + } + + constructor(context: Context, attrs: AttributeSet) : super(context, attrs) { + initAttributes(attrs) + initValues() + } + + constructor(context: Context, attrs: AttributeSet, defStyleAttr: Int) : super(context, attrs, defStyleAttr) { + initAttributes(attrs) + initValues() + } + + constructor(context: Context, fidgetRadius: Int, bodyColor: Int, sideCirclesColor: Int) : super(context) { + this.fidgetRadius = fidgetRadius + this.bodyColor = bodyColor + this.sideCirclesColor = sideCirclesColor + initValues() + } + + + fun initAttributes(attrs: AttributeSet) { + + val typedArray = context.obtainStyledAttributes(attrs, R.styleable.FidgetView, 0, 0) + + fidgetRadius = typedArray.getDimensionPixelSize(R.styleable.FidgetView_fidgetRadius, 100) + bodyColor = typedArray.getColor(R.styleable.FidgetView_fidgetBodyColor, resources.getColor(android.R.color.holo_red_light)) + sideCirclesColor = typedArray.getColor(R.styleable.FidgetView_fidgetSideCirclesColor, resources.getColor(android.R.color.darker_gray)) + + typedArray.recycle() + } + + private fun initValues() { + + centerPaint.isAntiAlias = true + centerPaint.style = Paint.Style.FILL + centerPaint.color = bodyColor + + sidesPaint.isAntiAlias = true + sidesPaint.style = Paint.Style.FILL + sidesPaint.color = sideCirclesColor + } + + override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) { + super.onMeasure(widthMeasureSpec, heightMeasureSpec) + + calWidthHeight = (2 * fidgetRadius) + (4 * distanceFactor * (fidgetRadius)).toFloat() + setMeasuredDimension(calWidthHeight.toInt(), calWidthHeight.toInt()) + } + + + override fun onDraw(canvas: Canvas) { + super.onDraw(canvas) + + val centerXY = (calWidthHeight / 2) + + //center circle + canvas.drawCircle(centerXY, centerXY, fidgetRadius.toFloat(), centerPaint) + + //top circle + var xCor = calWidthHeight / 2 + var yCor = (centerXY - ((2 * fidgetRadius) * distanceFactor)).toFloat() + + canvas.drawCircle(xCor, yCor, fidgetRadius.toFloat(), centerPaint) + canvas.drawCircle(xCor, yCor, (fidgetRadius * 3 / 5).toFloat(), sidesPaint) + + //right circle + xCor = centerXY + (cos30 * distanceFactor * (2 * fidgetRadius)).toFloat() + yCor = centerXY + (sin30 * distanceFactor * (2 * fidgetRadius)).toFloat() + + canvas.drawCircle(xCor, yCor, fidgetRadius.toFloat(), centerPaint) + canvas.drawCircle(xCor, yCor, (fidgetRadius * 3 / 5).toFloat(), sidesPaint) + + //left circle + xCor = centerXY - (cos30 * distanceFactor * (2 * fidgetRadius)).toFloat() + yCor = centerXY + (sin30 * distanceFactor * (2 * fidgetRadius)).toFloat() + + canvas.drawCircle(xCor, yCor, fidgetRadius.toFloat(), centerPaint) + canvas.drawCircle(xCor, yCor, (fidgetRadius * 3 / 5).toFloat(), sidesPaint) + + pivotX = centerXY + pivotY = centerXY + } +} \ No newline at end of file diff --git a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/ArcProgressLoader.kt b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/ArcProgressLoader.kt index e20ad77..273ad3d 100644 --- a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/ArcProgressLoader.kt +++ b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/ArcProgressLoader.kt @@ -25,9 +25,9 @@ class ArcProgressLoader : View, LoaderContract { field = if (value > 360) (value % 360) else value } - var arcColorsArray: IntArray = intArrayOf(resources.getColor(R.color.red), - resources.getColor(R.color.amber), - resources.getColor(R.color.green)) + var arcColorsArray: IntArray = intArrayOf(resources.getColor(android.R.color.holo_red_dark), + resources.getColor(android.R.color.holo_orange_light), + resources.getColor(android.R.color.holo_green_light)) private val paint: Paint = Paint() private var centerPoint: Float = 0.0f diff --git a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/CircularSticksLoader.kt b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/CircularSticksLoader.kt index 2e3f941..c75576c 100644 --- a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/CircularSticksLoader.kt +++ b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/CircularSticksLoader.kt @@ -14,7 +14,7 @@ import com.agrawalsuneet.loaderspack.basicviews.CircularSticksBaseView */ class CircularSticksLoader : CircularSticksBaseView { - override var sticksColor: Int = resources.getColor(R.color.grey) + override var sticksColor: Int = resources.getColor(android.R.color.darker_gray) set(defaultColor) { field = defaultColor if (defaultStickPaint != null) { @@ -22,7 +22,7 @@ class CircularSticksLoader : CircularSticksBaseView { } } - open var selectedStickColor: Int = resources.getColor(R.color.black) + open var selectedStickColor: Int = resources.getColor(android.R.color.black) set(selectedColor) { field = selectedColor if (selectedStickPaint != null) { @@ -112,9 +112,9 @@ class CircularSticksLoader : CircularSticksBaseView { this.sticksColor = typedArray - .getColor(R.styleable.CircularSticksLoader_circularsticks_stickColor, resources.getColor(R.color.grey)) + .getColor(R.styleable.CircularSticksLoader_circularsticks_stickColor, resources.getColor(android.R.color.darker_gray)) this.selectedStickColor = typedArray - .getColor(R.styleable.CircularSticksLoader_circularsticks_selectedStickColor, resources.getColor(R.color.black)) + .getColor(R.styleable.CircularSticksLoader_circularsticks_selectedStickColor, resources.getColor(android.R.color.black)) this.viewBackgroundColor = typedArray .getColor(R.styleable.CircularSticksLoader_circularsticks_viewBackgroundColor, resources.getColor(android.R.color.white)) diff --git a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/ClockLoader.kt b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/ClockLoader.kt index 09c659c..6a3744a 100644 --- a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/ClockLoader.kt +++ b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/ClockLoader.kt @@ -46,31 +46,31 @@ class ClockLoader : View, LoaderContract { initValues() } - var outerCircleBorderColor: Int = resources.getColor(R.color.grey) + var outerCircleBorderColor: Int = resources.getColor(android.R.color.darker_gray) set(value) { field = value initPaints() } - var bigCircleColor: Int = resources.getColor(R.color.black) + var bigCircleColor: Int = resources.getColor(android.R.color.black) set(value) { field = value initPaints() } - var hourHandColor: Int = resources.getColor(R.color.grey) + var hourHandColor: Int = resources.getColor(android.R.color.darker_gray) set(value) { field = value initPaints() } - var minuteHandColor: Int = resources.getColor(R.color.grey) + var minuteHandColor: Int = resources.getColor(android.R.color.darker_gray) set(value) { field = value initPaints() } - var innerCircleColor: Int = resources.getColor(R.color.grey) + var innerCircleColor: Int = resources.getColor(android.R.color.darker_gray) set(value) { field = value initPaints() @@ -124,15 +124,15 @@ class ClockLoader : View, LoaderContract { .getDimension(R.styleable.ClockLoader_clock_minuteHandLength, 300.0f) this.outerCircleBorderColor = typedArray - .getColor(R.styleable.ClockLoader_clock_outerCircleBorderColor, resources.getColor(R.color.grey)) + .getColor(R.styleable.ClockLoader_clock_outerCircleBorderColor, resources.getColor(android.R.color.darker_gray)) this.bigCircleColor = typedArray - .getColor(R.styleable.ClockLoader_clock_bigCircleColor, resources.getColor(R.color.black)) + .getColor(R.styleable.ClockLoader_clock_bigCircleColor, resources.getColor(android.R.color.black)) this.innerCircleColor = typedArray - .getColor(R.styleable.ClockLoader_clock_innerCircleColor, resources.getColor(R.color.grey)) + .getColor(R.styleable.ClockLoader_clock_innerCircleColor, resources.getColor(android.R.color.darker_gray)) this.hourHandColor = typedArray - .getColor(R.styleable.ClockLoader_clock_hourHandColor, resources.getColor(R.color.grey)) + .getColor(R.styleable.ClockLoader_clock_hourHandColor, resources.getColor(android.R.color.darker_gray)) this.minuteHandColor = typedArray - .getColor(R.styleable.ClockLoader_clock_minuteHandColor, resources.getColor(R.color.grey)) + .getColor(R.styleable.ClockLoader_clock_minuteHandColor, resources.getColor(android.R.color.darker_gray)) this.animSpeedMultiplier = typedArray .getFloat(R.styleable.ClockLoader_clock_animSpeedMultiplier, 1.0f) diff --git a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/FidgetLoader.kt b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/FidgetLoader.kt new file mode 100644 index 0000000..d7df1a5 --- /dev/null +++ b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/FidgetLoader.kt @@ -0,0 +1,122 @@ +package com.agrawalsuneet.loaderspack.loaders + +import android.content.Context +import android.util.AttributeSet +import android.view.Gravity +import android.view.ViewTreeObserver +import android.view.animation.* +import android.widget.LinearLayout +import com.agrawalsuneet.loaderspack.R +import com.agrawalsuneet.loaderspack.basicviews.FidgetView +import com.agrawalsuneet.loaderspack.basicviews.LoaderContract + +/** + * Created by agrawalsuneet on 9/20/18. + */ +class FidgetLoader : LinearLayout, LoaderContract { + + var fidgetRadius: Int = 100 + var bodyColor: Int = resources.getColor(android.R.color.holo_red_light) + var sideCirclesColor = resources.getColor(android.R.color.darker_gray) + + var noOfRotation: Int = 20 + var animDuration: Int = 3000 + var interpolator: Interpolator = AccelerateDecelerateInterpolator() + + private lateinit var fidgetView: FidgetView + + constructor(context: Context) : super(context) { + initView() + } + + constructor(context: Context, attrs: AttributeSet) : super(context, attrs) { + initAttributes(attrs) + initView() + } + + constructor(context: Context, attrs: AttributeSet, defStyleAttr: Int) : super(context, attrs, defStyleAttr) { + initAttributes(attrs) + initView() + } + + constructor(context: Context, fidgetRadius: Int, bodyColor: Int, sideCirclesColor: Int) : super(context) { + this.fidgetRadius = fidgetRadius + this.bodyColor = bodyColor + this.sideCirclesColor = sideCirclesColor + initView() + } + + + override fun initAttributes(attrs: AttributeSet) { + val typedArray = context.obtainStyledAttributes(attrs, R.styleable.FidgetLoader, 0, 0) + + fidgetRadius = typedArray.getDimensionPixelSize(R.styleable.FidgetLoader_fidget_fidgetRadius, 100) + + bodyColor = typedArray.getColor(R.styleable.FidgetLoader_fidget_bodyColor, + resources.getColor(android.R.color.holo_red_light)) + + sideCirclesColor = typedArray.getColor(R.styleable.FidgetLoader_fidget_sideCirclesColor, + resources.getColor(android.R.color.darker_gray)) + + + noOfRotation = typedArray.getInt(R.styleable.FidgetLoader_fidget_noOfRotation, 20) + + animDuration = typedArray.getInt(R.styleable.FidgetLoader_fidget_animDuration, 3000) + + interpolator = AnimationUtils.loadInterpolator(context, + typedArray.getResourceId(R.styleable.FidgetLoader_fidget_interpolator, + android.R.anim.accelerate_decelerate_interpolator)) + + typedArray.recycle() + } + + override fun onMeasure(widthMeasureSpec: Int, heightMeasureSpec: Int) { + super.onMeasure(widthMeasureSpec, heightMeasureSpec) + + val calWidthHeight = (2 * fidgetRadius) + (4 * FidgetView.distanceFactor * (fidgetRadius)).toFloat() + setMeasuredDimension(calWidthHeight.toInt(), calWidthHeight.toInt()) + } + + private fun initView() { + removeAllViews() + removeAllViewsInLayout() + + this.gravity = Gravity.CENTER + this.orientation = LinearLayout.VERTICAL + + fidgetView = FidgetView(context, fidgetRadius, bodyColor, sideCirclesColor) + this.addView(fidgetView) + + val loaderView = this + + viewTreeObserver.addOnGlobalLayoutListener(object : ViewTreeObserver.OnGlobalLayoutListener { + override fun onGlobalLayout() { + startLoading() + + val vto = loaderView.viewTreeObserver + vto.removeOnGlobalLayoutListener(this) + } + }) + } + + private fun startLoading() { + val anim = getRotateAnim() + fidgetView.startAnimation(anim) + } + + private fun getRotateAnim(): RotateAnimation { + + val fromDegree = 0.0f + val toDegree = 360f * noOfRotation + + val rotateAnimation = RotateAnimation(fromDegree, toDegree, + fidgetView.pivotX, fidgetView.pivotY) + rotateAnimation.duration = animDuration.toLong() + rotateAnimation.fillAfter = true + rotateAnimation.interpolator = interpolator + rotateAnimation.repeatCount = Animation.INFINITE + + return rotateAnimation + } + +} \ No newline at end of file diff --git a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/MultipleRippleLoader.kt b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/MultipleRippleLoader.kt index 5ed4a91..5f710fa 100644 --- a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/MultipleRippleLoader.kt +++ b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/MultipleRippleLoader.kt @@ -48,7 +48,7 @@ class MultipleRippleLoader : RippleLoader { .getDimensionPixelSize(R.styleable.MultipleRippleLoader_multipleripple_circleInitialRadius, 40) circleColor = typedArray.getColor(R.styleable.MultipleRippleLoader_multipleripple_circleColor, - resources.getColor(R.color.red)) + resources.getColor(android.R.color.holo_red_dark)) noOfRipples = typedArray.getInteger(R.styleable.MultipleRippleLoader_multipleripple_noOfRipples, 3) diff --git a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/RippleLoader.kt b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/RippleLoader.kt index 9b5b320..7e31879 100644 --- a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/RippleLoader.kt +++ b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/RippleLoader.kt @@ -22,7 +22,7 @@ open class RippleLoader : LinearLayout, LoaderContract { initView() } - var circleColor: Int = resources.getColor(R.color.red) + var circleColor: Int = resources.getColor(android.R.color.holo_red_dark) set(value) { field = value initView() @@ -59,7 +59,7 @@ open class RippleLoader : LinearLayout, LoaderContract { .getDimensionPixelSize(R.styleable.RippleLoader_ripple_circleInitialRadius, 40) circleColor = typedArray.getColor(R.styleable.RippleLoader_ripple_circleColor, - resources.getColor(R.color.red)) + resources.getColor(android.R.color.holo_red_dark)) fromAlpha = typedArray.getFloat(R.styleable.RippleLoader_ripple_fromAlpha, 0.9f) diff --git a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/RotatingCircularSticksLoader.kt b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/RotatingCircularSticksLoader.kt index 586028b..1dea2cf 100644 --- a/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/RotatingCircularSticksLoader.kt +++ b/loaderspack/src/main/java/com/agrawalsuneet/loaderspack/loaders/RotatingCircularSticksLoader.kt @@ -21,7 +21,7 @@ class RotatingCircularSticksLoader : LinearLayout, LoaderContract { var outerCircleRadius: Float = 200.0f var innerCircleRadius: Float = 100.0f - var sticksColor: Int = resources.getColor(R.color.grey) + var sticksColor: Int = resources.getColor(android.R.color.darker_gray) var viewBackgroundColor: Int = resources.getColor(android.R.color.white) var animDuration: Int = 5000 @@ -64,7 +64,7 @@ class RotatingCircularSticksLoader : LinearLayout, LoaderContract { this.sticksColor = typedArray - .getColor(R.styleable.RotatingCircularSticksLoader_rotatingsticks_stickColor, resources.getColor(R.color.grey)) + .getColor(R.styleable.RotatingCircularSticksLoader_rotatingsticks_stickColor, resources.getColor(android.R.color.darker_gray)) this.viewBackgroundColor = typedArray .getColor(R.styleable.RotatingCircularSticksLoader_rotatingsticks_viewBackgroundColor, resources.getColor(android.R.color.white)) diff --git a/loaderspack/src/main/res/values/attrs.xml b/loaderspack/src/main/res/values/attrs.xml index 9f33333..d5d4fde 100644 --- a/loaderspack/src/main/res/values/attrs.xml +++ b/loaderspack/src/main/res/values/attrs.xml @@ -17,6 +17,12 @@ + + + + + + @@ -122,4 +128,14 @@ + + + + + + + + + + \ No newline at end of file diff --git a/loaderspack/src/main/res/values/colors.xml b/loaderspack/src/main/res/values/colors.xml deleted file mode 100644 index 3914a3f..0000000 --- a/loaderspack/src/main/res/values/colors.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - #000000 - #A9A9A9 - - #0000ff - #ff0000 - #FFC200 - #00e500 -