隐藏

Xamarin Android -创建Splash Screen (一)

发布:2021/10/14 9:39:02作者:管理员 来源:本站 浏览次数:1076

Xamarin 开发的技术资料很少,通过学习,把自己的学习过程及其中碰到的问题与大家分享。

Splash Screen 就是在应用程序启动时,出现的一张图片,一般App的Splash Screen都是动态的广告信息。

先学习一下如何加载一个固定的Splash Screen.

一、在Resource/values/Styles.xml添加代码。

1
2
3
4
5
6
<?xml version="1.0" encoding="UTF-8" ?>
<resources>
  <style name="Theme.SplashActivity" parent="android:Theme.Holo.Light.NoActionBar">
    <item name="android:windowBackground">@drawable/ic_splash_logo</item>
  </style>
</resources>

其中的android:windowBackground设置成要加载的图片。

二、创建一个SplashActivity的类文件,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
namespace MyApplication
{
    using System.Threading;
    using Android.App;
    using Android.OS;
 
    [Activity (Label = "SplashScreen", MainLauncher=true, NoHistory=true, Theme="@style/Theme.SplashActivity")]
    public class SplashActivity : Activity
    {
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
 
            // 设置线程等待
            Thread.Sleep(2000);
 
            //启动MainActivity
            StartActivity(typeof(MainActivity));
        }
    }
}

参数说明:

1.MainLauncher:表示该Activity是一个启动Activity,当应用程序启动时,自动从此页启动。

2.Theme-自定义样式文件。

3.NoHistory-在默认的情况下,可以从一个Activity进入下一个Activity,同时也可以从下一个反回到上一个。此因,

我们这里是Splash Screen,不需要从一下个返回到上一个,所以它的作用就是不记录历史操作。

注意:在MainActivity中不能在去设置MainLauncher属性,如果设置了,在安装时会现两个应用包。