0
我正在開發Windows Phone 7遊戲,我使用的是SLXNA版本(Silvelight + XNA)和我擁有的所有東西,問題在於它需要很多導航遊戲頁面(GamePage.xaml),我想創建一個頁面,上面寫着「正在加載..」,因爲應用程序保持原狀,直到看到遊戲頁面。在SLXNA遊戲中製作加載頁面[WP7]
感謝您的回答。問候
我正在開發Windows Phone 7遊戲,我使用的是SLXNA版本(Silvelight + XNA)和我擁有的所有東西,問題在於它需要很多導航遊戲頁面(GamePage.xaml),我想創建一個頁面,上面寫着「正在加載..」,因爲應用程序保持原狀,直到看到遊戲頁面。在SLXNA遊戲中製作加載頁面[WP7]
感謝您的回答。問候
您有幾種選擇:
這真的取決於你在哪裏要加載的情況發生。它是一個遊戲循環還是SL頁面? XNA主題例如:
private Thread thread;
private bool isLoading;
private void LoadResources()
{
// Start loading the resources in an additional thread
thread = new Thread(new ThreadStart(gameplayScreen.LoadAssets));
thread.Start();
isLoading = true;
}
例如LoadResources當用戶按點擊屏幕
if (!isLoading)
{
if (input.Gestures.Count > 0)
{
if (input.Gestures[0].GestureType == GestureType.Tap)
{
LoadResources();
}
}
}
在遊戲更新循環方法被稱爲
if (null != thread)
{
// If additional thread finished loading and the screen is not
// exiting
if (thread.ThreadState == ThreadState.Stopped && !IsExiting)
{
//start the level
}
}
這表明東西的好主意用戶例如
private static readonly string loadingText = "Loading...";
,並在抽獎循環
if (isLoading)
{
Vector2 size = smallFont.MeasureString(loadingText);
Vector2 messagePosition = new Vector2(
(ScreenManager.GraphicsDevice.Viewport.Width - size.X)/2,
(ScreenManager.GraphicsDevice.Viewport.Height - size.Y)/2);
spriteBatch.DrawStringBlackAndWhite(smallFont, loadingText, messagePosition);
}