完美解决Android App启动页有白屏闪过的问题

应用启动的时候有短暂的白屏,如图:

可以通过设置theme的方式来解决

 <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
  </style>

  <style name="AppTheme.Transparent">
    <item name="android:windowIsTranslucent">true</item>
    <item name="windowNoTitle">true</item>
  </style>

在AndroidManifest中使用 AppTheme.Transparent

<activity android:name=".MainActivity"
      android:theme="@style/AppTheme.Transparent"
      >
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <action android:name="android.intent.action.VIEW"/>
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    </activity>

然后重新运行程序安装。

补充知识:解决Android启动页白屏及图片拉伸的问题

【Android小知识】

为了解决Android冷启动延迟、白屏等问题,往往会将启动图片设置到styles.xml文件中去,但是直接在style文件中引用图片的话很大可能会造成图片拉伸和变形,所以建议将图片配置到xml中去,最后在style文件中引入xml就可以了,如下代码所示:

style.xml

  <style name="SplashActivityThemes" parent="Theme.AppCompat.NoActionBar">
    <item name="android:windowBackground">@drawable/bg_splash</item>
    <item name="android:windowFullscreen">true</item>
  </style>

bg_splash.xml

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
  <item>
    <shape>
      <solid android:color="#FFFFFF"/>
    </shape>
  </item>
  <item
    android:bottom="50dp">
    <bitmap
      android:gravity="bottom|center_horizontal"
      android:src="@mipmap/icon_welcome"/>
  </item>
</layer-list>

以上这篇完美解决Android App启动页有白屏闪过的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • AndroidStudio替换项目图标ic_launcher操作

    1.打开项目主界面,任意打开一个类文件,如MainActivity.java,不要打开布局文件的disign界面 2.点击File-->New-->Image Asset,如图: 3.选择要替换的图标 4.选好之后点击ok 5.点击Next 6.点击finish 7.另外,如果你重新运行之后图标没有变化,不用着急,现在智能手机基本上都是桌面和应用同时控制着图标的显示,两者一起改,桌面图标才会变化,而桌面图标是有缓存的,应用改了之后,桌面依然控制着显示原来的图标,清除桌面数据再试试,基本上就能看

  • IDEA打包jar-解决找不到或无法加载主类 main的问题

    学习大佬们开发安全小工具,打包jar解决错误: 找不到或无法加载主类 main 1 Maven方式 遇到报错"找不到或无法加载主类 main" 解决方案 一定加入<build> <plugins>中的插件,这里需要注意的是 <mainClass>Main</mainClass>,这里填写的路径为/src/main/java下开始写的 <?xml version="1.0" encoding="UTF-8

  • 使用newInstance()来实例化fragment并传递数据操作

    好问题.答案就是这篇文章的题目所建议的,这是一种合理的设计.在这种情况下,newInstance()方法是一种"静态工厂方法",让我们在初始化和设置一个新的fragment的时候省去调用它的构造函数和额外的setter方法. 为你的Fragment提供静态工厂方法是一种好的做法,因为它封装和抽象了在客户端构造对象所需的步骤. 例如,考虑下面的代码: public class MyFragment extends Fragment { /** * 静态工厂方法需要一个int型的值来初始化

  • Android 将本地资源图片转换成Drawable,进行设置大小操作

    前言: 因为项目中显示图片是用Picasso,设置placeholder和error图片的时候发现,本地图片的大小无法满足我的需求,需要先对图片大小改变再显示. Picasso的placeholder和error的参数也只有int resId和Drawable drawable 于是打算将改变过大小的Drawable传进入显示,咦,效果很满意! 整个过程的思路: 将本地图片(R.drawable.image)变成Drawable对象 将Drawable对象转换成Bitmap对象 将Bitmap对

  • 完美解决Android App启动页有白屏闪过的问题

    应用启动的时候有短暂的白屏,如图: 可以通过设置theme的方式来解决 <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <!-- Customize your theme here. --> <item name="colorPrimary">@color/colorPrimary</item> <item

  • Android启动页出现白屏、黑屏的解决方案

    历史原因 当系统启动一个APP时,zygote进程会首先创建一个新的进程去运行这个APP,但是进程的创建是需要时间的,在创建完成之前,界面是呈现假死状态的,这就很尴尬了,因为用户会以为没有点到APP而再次点击,这极大的降低用户体验,Android需要及时做出反馈去避免这段迷之尴尬.于是系统根据你的manifest文件设置的主题颜色的不同来展示一个白屏或者黑屏.而这个黑(白)屏正式的称呼应该是Preview Window,即预览窗口. 好了,现在我们明白了,Preview Window其实是为了提

  • Android app启动图适配方法实例

    目录 前言 1.设置splash主题 2. splash_bg 设置: 3.splash布局文件设置: 附问题:项目启动时,会有白屏现象(在点击 应用图标到看到启动页之间). 总结 前言 app启动后的白屏问题,默认都是在splash页面加主题配置,主题配置一个背景来达到用户点击app图标就立马启动app的假象,大多情况下,使用背景单一的图片作为启动图,我们在设置背景颜色,就能适配的很不错了(背景颜色+logo图片的模式).但是当启动图不再单一,而且复杂的图形时候,适配就成大问题了,下面介绍我的

  • Android app启动时黑屏或者白屏的原因及解决办法

    1.产生原因 其实显示黑屏或者白屏实属正常,这是因为还没加载到布局文件,就已经显示了window窗口背景,黑屏白屏就是window窗口背景. 示例: 2.解决办法 通过设置设置Style (1)设置背景图Theme 通过设置一张背景图. 当程序启动时,首先显示这张背景图,避免出现黑屏 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> <item name=&qu

  • Android编程中activity启动时出现白屏、黑屏问题的解决方法

    本文实例讲述了Android编程中activity启动时出现白屏.黑屏问题的解决方法.分享给大家供大家参考,具体如下: 默认情况下 activity 启动的时候先把屏幕刷成白色,再绘制界面,绘制界面或多或少有点延迟,这段时间中你看到的就是白屏,显然影响用户体验,怎么消除呢? 在 Activity theme 设置style 即可 <style name="AppTheme" parent="android:Theme.Light.NoTitleBar">

  • Android自定义View实现APP启动页倒计时效果

    Android自定义View实现APP启动页倒计时效果,供大家参考,具体内容如下 之前也是做过APP启动页的倒计时效果,但是只有文字变化,没有动画效果,这次通过使用自定义View控件来制作一个带有动画效果的倒计时. 倒计时效果的基本思路如下: Canvas提供了绘制弧形的方法,drawArc(),使用这个方法通过定时刷新计算当前弧形的角度,就可以模拟出倒计时的动画效果,同时借助drawText()方法可以实现倒计时文字.(1)继承View(2)使用canvas的drawArc()来绘制弧形,模拟

  • Android实现启动页倒计时效果

    今天介绍一个很简单的倒计时动画,仿酷狗音乐的启动页倒计时效果,也是大多数APP在用的一个动画,来看看效果图: 整体的思路就是用一个平滑的帧动画来画圆弧就行了. 这篇文章学到什么? 了解属性动画ValueAnimator的用法 了解动画属性插值Interpolator,让动画过度得更自然 如何画圆弧 开始准备 新建一个类继承TextView,因为中间还有跳过的文本,所以选择用TextView来画个动起来的背景图. /** * 倒计时文本 */ @SuppressLint("AppCompatCus

  • Android app启动节点与上报启动实例详解

    目录 app启动的关键节点 启动时间怎么算 方案1: 参考firebase: 方案2 : ams 总结 app启动的关键节点 经常利用content provider 和Androidx里的 startup库来对库进行初始化操作,那么app启动关键方法的执行顺序是什么样的呢? 怎么样控制我的库的启动顺序? 参考这篇文章: Android 多个 ContentProvider 初始化顺序 精髓在这张图里: 回答上面的问题: 怎么样控制我的库的启动顺序? 推荐用contentprovider,设置i

  • Ionic2创建App启动页左右滑动欢迎界面

    摘要: 每个有逼格的App在第一次启动时都有一个欢迎界面,通常是几个单页面或者带动画的单页面滑动到最后一页有个启动的按钮,本文将使用Ionic2来创建,So easy! 效果如下 本文例子和上图稍有不同,主要功能如下: 每滑动一下展示一张全屏图片: 滑动到最后一页才出现启动按钮: 欢迎界面只在第一次安装启动时出现. 下面就让我们一步一步实现这个功能: 1.创建应用: 使用Ionic2创建应用非常简单,只需在V1的命令后跟上--v2即可,如下: ionic start ionic2-welcome

  • 用iOS代码获取APP启动页图片

    用代码获取APP启动页图片 // // AppleSystemService.swift // Swift-Animations // // Created by YouXianMing on 16/8/11. // Copyright © 2016年 YouXianMing. All rights reserved. // import UIKit class AppleSystemService : NSObject { /** Get the lauch image. - returns:

随机推荐