我在这里实现了示例: https ://github.com/XLabs/Xamarin-Forms-Labs/wiki/Camera 并且能够成功地从相机中获取图像。
此外,我已经实现了选择视频-但无法播放视频...
我最终建立了一个浏览器窗口并在上传后从删除页面播放视频。但是,这不是主意,我想在从文件系统或相机本身中选择视频后在应用程序中播放视频。
有没有人设法做到这个 xamarin 表单/表单实验室,而不必在每个平台上手动实现它?
如果这是唯一的方法,有什么例子吗?非常感谢!
我在这里实现了示例: https ://github.com/XLabs/Xamarin-Forms-Labs/wiki/Camera 并且能够成功地从相机中获取图像。
此外,我已经实现了选择视频-但无法播放视频...
我最终建立了一个浏览器窗口并在上传后从删除页面播放视频。但是,这不是主意,我想在从文件系统或相机本身中选择视频后在应用程序中播放视频。
有没有人设法做到这个 xamarin 表单/表单实验室,而不必在每个平台上手动实现它?
如果这是唯一的方法,有什么例子吗?非常感谢!
尝试使用媒体插件
这个易于使用且方便,请参阅上一页提供的文档
media Plugin 是一个简单的跨平台插件,用于拍摄照片和视频或从共享代码的图库中挑选它们。
用法
通过带有 Button 和 Image 的 Xamarin.Forms 项目来拍照:
takePhoto.Clicked += async (sender, args) =>
{
if (!CrossMedia.Current.IsCameraAvailable || !CrossMedia.Current.PhotosSupported)
{
DisplayAlert("No Camera", ":( No camera avaialble.", "OK");
return;
}
var file = await CrossMedia.Current.TakePhotoAsync(new Media.Plugin.Abstractions.StoreCameraMediaOptions
{
Directory = "Sample",
Name = "test.jpg"
});
if (file == null)
return;
DisplayAlert("File Location", file.Path, "OK");
image.Source = ImageSource.FromStream(() =>
{
var stream = file.GetStream();
file.Dispose();
return stream;
});
};
您可以查看 Xamarin Forms 组件商店中的视频播放器组件。它允许您在 iOS、Android 和 Windows Phone 上渲染本机视频播放器。下面的代码片段显示了将其放入并使用它的最简单示例。您还可以连接到播放、暂停、停止、完成等事件。您可以控制音量、自动播放和重复等。
https://github.com/adamfisher/Xamarin.Forms.VideoPlayer
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:o="clr-namespace:Octane.Xam.VideoPlayer;assembly=Octane.Xam.VideoPlayer"
x:Class="VideoPlayerSamples.VideoPlayerBasicExamplePage"
Title="Basic Video Player">
<o:VideoPlayer Source="http://vjs.zencdn.net/v/oceans.mp4" />
</ContentPage>
免责声明:这是我的组件。