2012-09-17 50 views
0

我正在開發Windows Phone 7遊戲,我使用的是SLXNA版本(Silvelight + XNA)和我擁有的所有東西,問題在於它需要很多導航遊戲頁面(GamePage.xaml),我想創建一個頁面,上面寫着「正在加載..」,因爲應用程序保持原狀,直到看到遊戲頁面。在SLXNA遊戲中製作加載頁面[WP7]

感謝您的回答。問候

回答

0

您有幾種選擇:

這真的取決於你在哪裏要加載的情況發生。它是一個遊戲循環還是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); 
     }