UWP定制的启动画面示例

时间:2018-04-15 08:32:15

标签: c# xaml uwp splash-screen

我想在UWP中创建一个启动画面。我想做的不仅仅是在屏幕中居中图像。我认为这将更直接。我看到了这些文章:

https://docs.microsoft.com/en-us/previous-versions/windows/apps/hh868191(v=win.10)

https://code.msdn.microsoft.com/windowsapps/Splash-Screen-in-Universal-42c0b57a

当我第一次打开这个样本时,我认为它有用......但是,它实际上并没有做任何事情。它实际上只是一个傻瓜。如果仔细查看屏幕,它实际上只是在应用程序启动时显示一个图像(在清单中定义)一两秒钟,然后当应用程序加载时,它会切换到带有进度环的扩展屏幕。我见过人们打开启动画面图像的样本,但这不是我想要实现的。部分问题是,即使在快速机器上,UWP应用程序的启动时间也很糟糕。即使是没有任何内容的空白应用程序也需要几秒钟才能启动。

是否有浮动的UWP样本实际上a)从清单中删除了启动图像,b)允许我们用其他东西替换它?

注意:我不想删除启动画面。我想自定义它。

1 个答案:

答案 0 :(得分:1)

主屏幕(package.appxmanifest中定义的中心启动画面图像)将始终显示,除非您将其设为optional - 即使在这种情况下,它也会在应用时显示给用户不会立即加载。

要使启动画面可选,您必须以XML格式打开清单文件,添加以下命名空间声明:

<Package
  ...
  xmlns:uap5="http://schemas.microsoft.com/appx/manifest/uap/windows10/5">

然后将uap5:optional属性添加到初始屏幕:

<uap:SplashScreen ... uap5:Optional="true" />

您可以实现扩展的启动画面,您在链接的文章中对此进行了描述。如果您推迟扩展初始屏幕的所有初始化,很可能根本不会显示可选的默认启动画面。

但是,虽然示例只显示带有进度环的相同图像,但您可以将所需的任何内容放在扩展的闪屏上,您可以完全控制它,因为它是正常的Page