【问题标题】:Xamarin Forms media player -Full screen option (android)Xamarin Forms 媒体播放器 - 全屏选项 (android)
【发布时间】:2020-06-14 09:51:09
【问题描述】:

大家好,我通过此链接开发了 xamarin 媒体播放器,它可以完美运行 https://docs.microsoft.com/en-us/xamarin/xamarin-forms/app-fundamentals/custom-renderer/video-player/ 但我想知道如何添加全屏图标并使其在 Xamarin 视频播放器中运行。请帮忙

【问题讨论】:

  • 它使用原生视频库的渲染器。还是基于 webview?
  • 使用原生视频库 (VideoPlayerRenderer)

标签: xaml xamarin xamarin.forms xamarin.android


【解决方案1】:

您可以使用自定义渲染器参考this

为了让自定义渲染器工作,我对代码做了一些修改:

首先,将你的Android项目中的视频渲染器替换为自定义视频渲染器,然后将init方法中的代码移入VideoRenderer构造器并删除init方法,将_context变量改为Context并移除静态:

Context _context;
double deviceWidth;
double deviceHeight;

然后,在相关方法中使用 _context.GetActivity().RequestedOrientation 代替 _context.RequestedOrientation。

最后,需要在Android中的resource/drawable中添加图标,你可以在github问题链接中找到图标。

要使其全屏显示,需要隐藏额外的 UI,例如:

var uiOpts = SystemUiFlags.LayoutStable 
                | SystemUiFlags.LayoutFullscreen 
                | SystemUiFlags.HideNavigation 
                | SystemUiFlags.LightStatusBar
                | SystemUiFlags.Immersive
                | SystemUiFlags.LayoutHideNavigation
                | SystemUiFlags.Fullscreen;

window.DecorView.SystemUiVisibility = (StatusBarVisibility)uiOpts;

当退出全屏时,相应地清除标志,这里是google doc for full screen

希望对你有帮助。

【讨论】:

  • 我遵循了代码 .. 屏幕方向变为横向,但视频播放器无法捕获全屏。我需要让视频播放器像普通的其他视频播放器一样全屏。谢谢
  • 嗨,您可能需要使用更新的代码隐藏额外的系统 UI。
猜你喜欢
  • 1970-01-01
  • 2015-01-31
  • 1970-01-01
  • 1970-01-01
  • 2012-03-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-08
相关资源
最近更新 更多