我的应用程序中有这样的按钮。按钮
我想知道如何检测点击它
您发布的图像中的按钮来自SystemMediaTransportControls类。您似乎正在从应用程序中播放媒体。如果你想在你发布的图片中检测按钮点击事件。您必须在应用程序中获取当前SystemMediaTransportControls
对象并处理其按钮按下事件。
像这样:
mediaPlayer = new MediaPlayer();
mediaPlayer.Source = MediaSource.CreateFromUri(new Uri("ms-appx:///Assets/video.mp4"));
mediaPlayer.Play();
_systemMediaTransportControls = mediaPlayer.SystemMediaTransportControls;
_systemMediaTransportControls.IsPlayEnabled = true;
_systemMediaTransportControls.IsPauseEnabled = true;
_systemMediaTransportControls.ButtonPressed += _systemMediaTransportControls_ButtonPressed;
private async void _systemMediaTransportControls_ButtonPressed(SystemMediaTransportControls sender, SystemMediaTransportControlsButtonPressedEventArgs args)
{
switch (args.Button)
{
case SystemMediaTransportControlsButton.Play:
await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
{
MyTextBlock.Text = "Play";
mediaPlayer.Play();
});
break;
case SystemMediaTransportControlsButton.Pause:
await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
{
MyTextBlock.Text = "Pause";
mediaPlayer.Pause();
});
break;
case SystemMediaTransportControlsButton.Next:
await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
{
MyTextBlock.Text = "Next";
});
break;
case SystemMediaTransportControlsButton.Previous:
await Dispatcher.RunAsync(Windows.UI.Core.CoreDispatcherPriority.Normal, () =>
{
MyTextBlock.Text = "Previous";
});
break;
default:
break;
}
}
如果您使用MediaElement来播放媒体,则需要使用另一种方法来获得SystemMediaTransportControls
,如下所示:
_systemMediaTransportControls = SystemMediaTransportControls.GetForCurrentView();
有关更多信息,请查看:系统介质传输控制的手动控制