。。。。。。(空話少說)
Xamarin 開發的技術資料很少,通過學習,把自己的學習過程及其中碰到的問題與大家分享。
Splash Screen 就是在應用程序啟動時,出現的一張圖片,一般App的Splash Screen都是動態的廣告信息。
先學習一下如何加載一個固定的Splash Screen.
一、在Resource/values/Styles.xml添加代碼。
<?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的類文件,代碼如下:
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屬性,如果設置了,在安裝時會現兩個應用包。