From c1d15fc0585321ed395977f703928ffec6bb574b Mon Sep 17 00:00:00 2001 From: Ashish Pandey Date: Sat, 21 Oct 2017 21:03:57 +0530 Subject: [PATCH] Added GIF support using android-gif-drawable library --- android/build.gradle | 12 ++++++++++++ .../splashscreen/RCTSplashScreen.java | 10 ++++++---- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/android/build.gradle b/android/build.gradle index dfbd150..59525af 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -18,7 +18,19 @@ android { } } +buildscript { + repositories { + mavenCentral() + } +} +allprojects { + repositories { + mavenCentral() + } +} + dependencies { + compile 'pl.droidsonroids.gif:android-gif-drawable:1.2.8' compile fileTree(include: ['*.jar'], dir: 'libs') compile 'com.android.support:appcompat-v7:23.4.0' compile 'com.facebook.react:react-native:+' diff --git a/android/src/main/java/com/reactnativecomponent/splashscreen/RCTSplashScreen.java b/android/src/main/java/com/reactnativecomponent/splashscreen/RCTSplashScreen.java index 32c2e83..b259720 100644 --- a/android/src/main/java/com/reactnativecomponent/splashscreen/RCTSplashScreen.java +++ b/android/src/main/java/com/reactnativecomponent/splashscreen/RCTSplashScreen.java @@ -15,6 +15,8 @@ import java.lang.ref.WeakReference; +import pl.droidsonroids.gif.GifImageView; + public class RCTSplashScreen { @@ -23,7 +25,7 @@ public class RCTSplashScreen { public static final int UIAnimationScale = 2; private static Dialog dialog; - private static ImageView imageView; + private static GifImageView imageView; private static WeakReference wr_activity; @@ -36,10 +38,10 @@ public static void openSplashScreen(Activity activity) { } public static void openSplashScreen(Activity activity, boolean isFullScreen) { - openSplashScreen(activity, isFullScreen, ImageView.ScaleType.CENTER_CROP); + openSplashScreen(activity, isFullScreen, GifImageView.ScaleType.CENTER_CROP); } - public static void openSplashScreen(final Activity activity, final boolean isFullScreen, final ImageView.ScaleType scaleType) { + public static void openSplashScreen(final Activity activity, final boolean isFullScreen, final GifImageView.ScaleType scaleType) { if (activity == null) return; wr_activity = new WeakReference<>(activity); final int drawableId = getImageId(); @@ -51,7 +53,7 @@ public void run() { if(!getActivity().isFinishing()) { Context context = getActivity(); - imageView = new ImageView(context); + imageView = new GifImageView(context); imageView.setImageResource(drawableId);