Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows phone 8 从一个按钮暂停/播放功能?_Windows Phone 8_Mediaelement - Fatal编程技术网

Windows phone 8 从一个按钮暂停/播放功能?

Windows phone 8 从一个按钮暂停/播放功能?,windows-phone-8,mediaelement,Windows Phone 8,Mediaelement,有人能告诉我我做错了什么吗?我试图使用Windows Phone应用程序栏中的一个图标,让用户点击它来播放和暂停我作为MediaElement插入到XAML中的背景音频。这是我的代码: private void ApplicationBarIconButton_Click(object sender, EventArgs e) { if (PlayState.Playing == BackgroundAudioPlayer.Instance.PlayerState)

有人能告诉我我做错了什么吗?我试图使用Windows Phone应用程序栏中的一个图标,让用户点击它来播放和暂停我作为MediaElement插入到XAML中的背景音频。这是我的代码:

 private void ApplicationBarIconButton_Click(object sender, EventArgs e)
    {
        if (PlayState.Playing == BackgroundAudioPlayer.Instance.PlayerState)
        {
            BackgroundAudioPlayer.Instance.Pause();
        }
        else if (PlayState.Paused == BackgroundAudioPlayer.Instance.PlayerState)
        {
            BackgroundAudioPlayer.Instance.Play();
        }
通读它是有意义的,并且在构建时不会抛出任何错误,但是当我在设备上测试时点击它,音乐不会暂停并继续播放(我已将AutoPlay设置为true以实现此目的),有人能告诉我应该如何启用一个按钮来控制播放和暂停功能吗

另外,如果我删除“else-if”并将代码转换为简单的“else”,则代码如下所示:

 private void ApplicationBarIconButton_Click(object sender, EventArgs e)
    {
        if (PlayState.Playing == BackgroundAudioPlayer.Instance.PlayerState)
        {
            BackgroundAudioPlayer.Instance.Pause();

        }
        else
        {
            BackgroundAudioPlayer.Instance.Play();

        }
    }

它会暂停,但不会继续播放

以下是实现播放/暂停功能的分步实施

“我已在XAML中作为MediaElement插入。”

如果您使用的是MediaElement,我认为您是在前台播放音频。尝试在音频启动后关闭应用程序。它一直在播放吗?要暂停和播放媒体元素,只需使用媒体元素上的播放和暂停方法即可

nameOfMediaElement.Pause();
nameOfMediaElement.Play();
要使用使用BackgroundAudioPlayer.Instance.PlayerState的事件处理程序,必须设置在后台播放的初始音频。为此,您需要通过BackgroundAudioPlayer启动音频播放

试试这个

if(mediaelement.CurrentState == MediaElementState.Paused)
{
    mediaelement.Play(); 
}
else
{
    mediaelement.Pause();
}

希望它对您有用。

这是我试图遵循的方法,但是该按钮只是将音频切换到关闭,而不是打开和关闭。我曾考虑过使用两个单独的按钮,并实现播放/暂停功能,这将包含您在帖子中提到的代码,我如何设置音频?我相信这将是一种“跟踪”方法,但这将如何实现?该按钮应充当播放/暂停或静音/取消静音音频的“切换”。