我正在开发一个Xamarin Forms应用程序,现在我正在尝试在MediaElement中实现自定义视频控件,但我没有这样做,谷歌搜索也没有多大帮助。
基本概述,我有一个MediaElement播放视频,我有两个按钮,在视频的每一边,我希望用户能够按下和倒带或快进5秒.按钮识别被点击,但不做我想他们,我不知道我做错了什么.这里是我的代码:
Page.xaml
...
<Grid BackgroundColor="#E5EBEE">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="150"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="150"/>
</Grid.ColumnDefinitions>
<MediaElement x:Name="LessonVideo"
Source="ms-appx:///vid_IntroDemo.mp4"
ShowsPlaybackControls="False"
IsLooping="True"
Aspect="AspectFill"
AutoPlay="True"
KeepScreenOn="True"
HorizontalOptions="FillAndExpand"
VerticalOptions="FillAndExpand"
Grid.ColumnSpan="3"
/>
<BoxView Opacity="0.0" BackgroundColor="#00C2FF"/>
<Button x:Name="Back" BackgroundColor="Yellow" Grid.Column="0" Opacity="0.2" Clicked="RewindVideo"></Button>
<Button x:Name="Forward" BackgroundColor="Red" Grid.Column="2" Opacity="0.2"></Button>
</Grid>
字符串
Page.xaml.cs
...
private void RewindVideo(object sender, EventArgs e)
{
if (LessonVideo.CanSeek)
{
LessonVideo.Position = TimeSpan.FromSeconds(LessonVideo.Position.TotalSeconds - 5);
}
}
型
我已经尝试停止和播放视频,但似乎没有什么工作。帮助我,并指出我在正确的方向如何解决这个问题。提前谢谢你。
1条答案
按热度按时间s2j5cfk01#
使用.NET MAUI Community Toolkit,我已经能够使用
SeekTo()
方法实现播放位置控制:字符串
我个人实现了一个 Slider 控件来实现这一点,我必须在调用
SeekTo()
之前暂停音乐如果你有兴趣看看它的实际应用,我已经写了一系列关于MediaElement的文章。你可以从here开始。