【发布时间】:2012-08-19 12:58:17
【问题描述】:
我在使用 windows phone 摇动手势库时遇到了问题。 我构建了一个应用程序,它的震动声音会消失,它的工作很好,但奇怪的错误让我感到困惑。我有两页。这是我的单独代码:
void Instance_ShakeGesture1(object sender, ShakeGestureEventArgs e)
{
Stream stream = TitleContainer.OpenStream("Sounds/C.wav");
effect = SoundEffect.FromStream(stream);
effectInstance = effect.CreateInstance();
if (effectInstance.State != SoundState.Playing || effectInstance == null)
{
FrameworkDispatcher.Update();
effectInstance.Play();
}
else if (effectInstance.State == SoundState.Playing || effectInstance != null)
{
effectInstance.Stop();
}
}
void Instance_ShakeGesture2(object sender, ShakeGestureEventArgs e)
{
Stream stream = TitleContainer.OpenStream("Sounds/D.wav");
effect = SoundEffect.FromStream(stream);
effectInstance = effect.CreateInstance();
FrameworkDispatcher.Update();
if (effectInstance.State == SoundState.Stopped || effectInstance == null)
{
effectInstance.Play();
}
else if (effectInstance.State == SoundState.Playing || effectInstance != null)
{
effectInstance.Stop();
}
}
Instance_ShakeGesture1 是我在第 1 页摇动时播放音乐的程序,在第 2 页中播放 Instance_ShakeGesture2。 摇晃时出现了奇怪的错误,如果我摇动第 1 页 Instance_ShakeGesture1 将在之后执行,我尝试移至第 2 页并且我摇动它将首先执行 Instance_ShakeGesture1,然后再执行 Instance_ShakeGesture2。 当我尝试先摇动第 2 页而不是第 1 页时,问题也一样,Instance_ShakeGesture2 将首先执行,Instance_ShakeGesture2 将在第二个执行。 当我使用断点时,我知道这个错误。 有谁知道如何解决这个问题?谢谢之前:)
【问题讨论】:
标签: c# windows-phone-7 xna shake