Gif启动页

2019-11-26  本文已影响0人  on_i_on

Gif启动页

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <!--<item name="android:windowIsTranslucent">true</item>-->
</style>

<!-- 应用启动页(StartingWindow)的theme -->
<style name="AppTheme.StartingWindowTheme" parent="AppTheme">
    <!-- 可以设置成纯颜色(设置一个和Activity UI相似的背景) -->
    <!--<item name="android:windowBackground">@color/startingwindow_bgcolor</item>-->
    <!--也可以设置成一张图片 -->
    <item name="android:windowBackground">@drawable/launcher_static</item>
    <item name="android:windowTranslucentNavigation">true</item>
    <item name="android:windowFullscreen">true</item>
</style>

其中注意的是@drawable/launcher_static 代码如下

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
    <shape>
        <solid android:color="@color/contentColor" />
    </shape>
</item>
<item android:bottom="@dimen/dp_30">
    <bitmap
        android:gravity="center"
        android:src="@drawable/luancher_static_body" />
</item>
</layer-list>

我的启动页如下图,第一个是一个gif,但是在刚启动的时候必须放一张零时图片,这张图片不能为gif的第一帧,不然图片会有拉伸等问题。在启动页启动后我使用的是glide加载

 Glide.with(context).load(drawable).diskCacheStrategy(DiskCacheStrategy.SOURCE)
.into(new GlideDrawableImageViewTarget(imageView, 1));

还有一个小问题就是虚拟bar的手机我们需要隐藏一下虚拟bar,onCreate方法里面加上这段代码。

WindowManager.LayoutParams params = getWindow().getAttributes();
params.systemUiVisibility = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
|View.SYSTEM_UI_FLAG_IMMERSIVE;
getWindow().setAttributes(params);
launch.gif luanch_static_body.png
上一篇 下一篇

猜你喜欢

热点阅读