在我的silverlight WP7
应用中,我正在使用XNA库播放声音。以下是代码。
Microsoft.Xna.Framework.Media.Song s = Microsoft.Xna.Framework.Media.Song.FromUri("song", new Uri("bmusic.mp3", UriKind.Relative));
Microsoft.Xna.Framework.FrameworkDispatcher.Update();
Microsoft.Xna.Framework.Media.MediaPlayer.IsRepeating = true;
Microsoft.Xna.Framework.Media.MediaPlayer.Play(s);
它开始播放声音并在一秒钟后停止,而歌曲是10秒长。有什么问题?
答案 0 :(得分:1)
Silverlight基于事件,而XNA更基于循环。您需要启用XNA框架事件,如here所述。作为一个快速测试,看看是否存在问题,在页面的构造函数中,您可以添加:
DispatcherTimer timer = new DispatcherTimer();
timer.Interval = TimeSpan.FromMilliseconds(30);
timer.Tick += delegate { try { FrameworkDispatcher.Update(); } catch { } };
timer.Start();