如何在启动画面中使用GIF?

时间:2017-09-07 17:20:12

标签: react-native react-native-android

我想将GIF文件用作启动画面。我用https://github.com/react-native-component/react-native-smart-splash-screen这个包。

4 个答案:

答案 0 :(得分:1)

默认情况下,react-native(Android)不支持GIF。查看here了解详情。

答案 1 :(得分:1)

嘿,你可以使用lottie :)
网站:https://airbnb.design/lottie/
Github:https://github.com/airbnb/lottie-android
Lottie Gif:https://www.lottiefiles.com/

答案 2 :(得分:0)

您可以尝试使用GLIDE并将 asGif()

 Glide.with(ctx)
 .load(imageUrl)
 .asGif()
 .placeholder(R.drawable.loading2)
 .crossFade()
 .into(imageView);

https://github.com/bumptech/glide

答案 3 :(得分:0)

这是我的做法:

  1. 创建一个XML文件并将其定位在android / app / src / main / res / layout下,并将其命名为splash.xml。
<?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout 
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#ffffff">
        <ImageView 
            android:id="@+id/gif_logo_image"  
            android:layout_width="300dp"
            android:layout_height="300dp"
            android:layout_centerInParent="true"
        />   
    </RelativeLayout>
  1. 包括来自here的Glide软件包。

  2. 将GIF图片拖放到android / app / src / main / res / drawable下,并将其命名为splash_logo.gif。

  3. 在MainActivity.java中,更新onCreate方法以加载GIF图像并将其显示在布局中包含的ImageView中。

@Override
    protected void onCreate( @Nullable Bundle savedInstanceState ) {
        super.onCreate( savedInstanceState );
        setContentView( R.layout.splash );
        ImageView logoGIFImage = (ImageView) findViewById(R.id.gif_logo_image);
        Glide.with(this).load(R.drawable.splash_logo).into(logoGIFImage);
    }