Skip to content

Commit 2dfce8e

Browse files
committed
feat(android): custom progress color for android
1 parent ba2baaa commit 2dfce8e

File tree

3 files changed

+23
-0
lines changed

3 files changed

+23
-0
lines changed

android/src/main/java/com/ting/TingModule.kt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import android.graphics.Bitmap
66
import android.graphics.BitmapFactory
77
import android.graphics.Color
88
import android.graphics.PorterDuff
9+
import android.graphics.PorterDuffColorFilter
910
import android.graphics.drawable.AnimatedVectorDrawable
1011
import android.graphics.drawable.GradientDrawable
1112
import android.os.Handler
@@ -147,6 +148,7 @@ class TingModule internal constructor(context: ReactApplicationContext) : TingSp
147148
val titleColor = options?.getString("titleColor")
148149
val message = options?.getString("message")
149150
val messageColor = options?.getString("messageColor")
151+
val progressColor = options?.getString("progressColor")
150152
val preset = options?.getString("preset")
151153
val backgroundColor = options?.getString("backgroundColor")
152154
val borderRadius = if (options.hasKey("borderRadius")) options?.getInt("borderRadius") else null
@@ -213,6 +215,13 @@ class TingModule internal constructor(context: ReactApplicationContext) : TingSp
213215
iconView.visibility = ImageView.GONE
214216
progressBar.id = R.id.loading_spinner
215217
progressBar.layoutParams = progressSize
218+
219+
if (progressColor != null) {
220+
val progressDrawable = progressBar.indeterminateDrawable.mutate()
221+
progressDrawable.colorFilter = PorterDuffColorFilter(parseColor(progressColor), PorterDuff.Mode.SRC_IN)
222+
progressBar.indeterminateDrawable = progressDrawable
223+
}
224+
216225
container.addView(progressBar, 0)
217226
}
218227

example/src/App.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,6 +194,7 @@ const DATA: ItemType[] = [
194194
title: 'Đáy xã hội',
195195
message: 'Chờ xíu',
196196
preset: 'spinner',
197+
progressColor: '#FD966A',
197198
}),
198199
},
199200
{
@@ -254,6 +255,7 @@ const DATA: ItemType[] = [
254255
blurBackdrop: 20,
255256
backdropOpacity: 0.1,
256257
preset: 'spinner',
258+
progressColor: '#FD966A',
257259
}),
258260
},
259261
];

src/Type.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,12 @@ export interface ToastOptions {
3838
* Defaults to `null`.
3939
*/
4040
icon?: Icon;
41+
42+
/**
43+
* progress color for spinner preset
44+
* @platform android
45+
*/
46+
progressColor?: string;
4147
}
4248

4349
export interface AlertOptions {
@@ -87,4 +93,10 @@ export interface AlertOptions {
8793
* custom icon
8894
*/
8995
icon?: Icon;
96+
97+
/**
98+
* progress color for spinner preset
99+
* @platform android
100+
*/
101+
progressColor?: string;
90102
}

0 commit comments

Comments
 (0)