当我单击应用程序图标并开始运行应用程序时,它会出现 1 秒钟的白屏。
我不知道为什么。
有没有办法清除这个白屏并直接进入我的活动?
9 回答
onCreate()
例如,当您的跑步和您的布局正在膨胀时,会显示窗口背景。这可能需要一些时间,尤其是在需要读取、解码和缩放大量位图的情况下。
更改主题有效,因为某些主题具有非默认窗口背景。例如,Theme.Wallpaper
具有透明背景。那里也有其他定义。基本上你想要的是:
<style name="YourTheme">
<item name="android:windowBackground">@null</item>
</style>
以编程方式,您可以使用
getWindow().setBackgroundDrawable(null);
在活动的顶部onCreate()
。
(老问题,但被另一个答案撞到了,没有一个好的答案。)
设置。文件>设置>构建,部署>即时运行取消选择那里显示的所有选项。
并在您的 style.xml 中添加以下行
<item name="android:windowDisablePreview">true</item>
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowDisablePreview">true</item>
</style>
apply changes in AndroidMainfest.xml
<application
android:theme="@style/AppTheme">
在我更改 style.xml 之后:
<resources>
<style name="AppTheme" parent="android:Theme.Wallpaper" />
</resources>
有用!!谢谢大家
在对应activity的manifest文件中添加如下
android:launchMode="standard"
并从相应的活动中删除 android:label="@string/app_name" ,这实际上帮助了我
在您的manifest.xml
文件中删除android:theme="@style/AppTheme"
您的应用程序的行。并再次检查
在清单中使用此标记:
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
就像你管..最初他们显示图标屏幕而不是白屏。并在 2 秒后显示主屏幕。
首先在 res/drawable 中创建一个 XML drawable。
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:drawable="@color/gray"/>
<item>
<bitmap
android:gravity="center"
android:src="@mipmap/ic_launcher"/>
</item>
</layer-list>
接下来,您将在主题中将其设置为启动活动的背景。导航到您的 styles.xml 文件并为您的启动活动添加一个新主题
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>
<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowBackground">@drawable/background_splash</item>
</style>
</resources>
在新的 SplashTheme 中,将窗口背景属性设置为 XML 可绘制对象。在 AndroidManifest.xml 中将其配置为启动活动的主题:
<activity
android:name=".SplashActivity"
android:theme="@style/SplashTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
这个链接给出了你想要的。一步一步的程序。 https://www.bignerdranch.com/blog/splash-screens-the-right-way/
只需在 AndroidManifest.xml 文件中提及启动活动的透明主题即可。
喜欢:
<activity
android:name="first Activity Name"
android:theme="@android:style/Theme.Translucent.NoTitleBar" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
在 Styles 中添加以下内容
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowIsTranslucent">true</item>
希望这会帮助你和它为我工作