Youtube 退出全屏模式 TextView 可见性问题

2024-05-20

我正在全屏模式下播放视频,当我单击后退按钮时,我可以退出全屏模式 - 但无法显示我在全屏情况下隐藏的 TextView。

要在全屏模式下隐藏 textView,我使用以下代码:

@Override
public void onInitializationSuccess(YouTubePlayer.Provider provider,
        YouTubePlayer player, boolean wasRestored) {
    if (!wasRestored) {
        showPlayer();
        videoPlayer = player;
        videoPlayer.setOnFullscreenListener(new OnFullscreenListener() {

            @Override
            public void onFullscreen(boolean _isFullScreen) {
                fullScreen = _isFullScreen;
                textView.setVisibility(View.GONE); // hiding
            }
        });
        videoPlayer.loadVideo(actualVideo.getVideoId());
    }
}

要显示 textView,当我退出全屏模式时使用:

@Override
public void onBackPressed() {
    if (fullScreen){
        videoPlayer.setFullscreen(false);
        textView.setVisibility(View.VISIBLE); // showing

    } else{
        super.onBackPressed();
    }
}

我不知道为什么?但是,当我点击后退按钮(我的意思是退出全屏模式)时,我的 textView 没有处于可见状态。


_里面是全屏public void onFullscreen(boolean _isFullScreen)是全屏状态,如果为 true 则表示播放器已进入全屏模式,如果为 false 则表示播放器从全屏模式切换回来,并且当您进入全屏模式并进入时会调用此侦听器从全屏模式返回,分别具有 true 和 false 值。您应该修改如下代码

videoPlayer.setOnFullscreenListener(new OnFullscreenListener() {

        @Override
        public void onFullscreen(boolean _isFullScreen) {
            fullScreen = _isFullScreen;
            if(_isFullScreen){
            textView.setVisibility(View.GONE); // hide text as player switched to full screen mode
            } else {
            textView.setVisibility(View.VISIBLE); // show text as player switched back from full screen mode, changing visibility here instead of onBackPressed have advantage that even if user switches back from full screen mode using control button on player instead of press back button the text will still come to visible
            }
        }
    });

如果按下后退按钮时播放器处于全屏模式,则 onBackPressed 侦听器将仅用于将播放器从全屏模式切换回;

@Override
public void onBackPressed() {
if (fullScreen){
    videoPlayer.setFullscreen(false);

} else{
    super.onBackPressed();
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Youtube 退出全屏模式 TextView 可见性问题 的相关文章

随机推荐

  • 基于非 HTTP 协议的 REST 示例

    REST 在 HTTP 之外的其他协议上的工作效果如何 对于使用 REST 或可能使用 REST 的协议 是否有任何好的示例 我认为你不会找到很多 但是here https datatracker ietf org doc draft ie
  • 如何将字符串拆分为字符串数组?

    Actually i am reading an xps file in to my Program My xps file should be like this 我粘贴以下代码 List
  • 我可以知道 requireGestureRecognizerToFail 到底会做什么吗?

    谁能告诉我下面的代码行到底会做什么 我已经提到过Apples https developer apple com library ios documentation uikit reference UIGestureRecognizer C
  • 我可以在扩展方法中设置小数变量的值吗? [复制]

    这个问题在这里已经有答案了 我创建了一个void可以使用的扩展方法decimal数据类型 我希望能够修改this方法范围内的参数变量 这是我的扩展方法的代码 public static void SetAndConvertIfHasValu
  • 用于虚拟继承的虚拟函数表中的虚拟基偏移量

    代码如下 在Ubuntu 16 04上用G 5 4编译的C 11代码 include
  • jasper 报告 pdf 导出中忽略半透明(半透明)背景色

    问 为什么保存为 PDF 时 Alpha 信息会丢失 Jaspersoft studio 不允许我用 Alpha 指定颜色 因此 我尝试聪明地在着色元素上指定键 并更改代码中的颜色 如下所示 JasperReport jasperRepor
  • SSDT项目中模式对象的条件编译

    我们的 SSDT 数据库项目包括一个表 该表具有一个计算列 该计算列可以根据客户要求采用多种形式之一 我试图弄清楚如何管理这个计算列 以便我们仍然可以使用发布功能 而无需将每个人的列恢复为默认值 我想要完成的任务可以在下面解释invalid
  • 使用 ASP 将参数传递给存储过程

    我正在尝试将一些参数传递给经典 ASP 中的 SQL 存储过程 我看过几篇关于此的帖子 不确定我做错了什么 因为我似乎没有看到我的差异 set conn CreateObject ADODB Connection conn open DSN
  • Win 10 应用程序:删除 Toast 通知

    我显示 toast 通知 然后它会显示在通知中心上 然后我想以编程方式从通知中心删除该通知 我怎样才能做到这一点 在显示通知和我需要删除它之间 该应用程序可能会关闭并重新启动 您可以使用以下方法之一以编程方式从操作中心删除通知 Toast通
  • Node js 使用中间件重定向进行过多重定向

    在我的 Node js 应用程序 我使用的是express 4 x 中 我想检查用户是否已登录 如果用户未登录 我想重定向到我的登录页面 然后我在中间件中这样做 服务器 js app use function req res next if
  • 限制 LDAP 查询中返回的属性

    如何限制通过 System DirectoryServices 在 LDAP 查询中返回的属性 我一直在使用 DirectorySearcher 并将我想要的属性添加到 DirectorySearcher PropertiesToLoad
  • 记录骆驼路线

    我的项目中有几个 Camel 上下文 如果可能的话 我想以逆向工程方式记录路线 因为我们希望保持与上下文相关的文档最新 最好的方法是什么 我们倾向于预先实际设计路线 并使用来自EIP book http www eaipatterns co
  • 是否可以在 C 中自动生成的变量名中使用 __LINE__ ?

    为了避免重复 我想使用 LINE 在自动生成的变量名称中 define ROUTE path impl char k impl LINE route path impl 但它始终被视为普通字符串 LINE 即使我将其定义如下 我也无法得到我
  • MySQL如何获取unix时间戳的时间差

    我有一个保存值1506947452的变量 需要使用公式从该日期提取分钟 started data now date 但started date采用unix时间戳格式10位int数字 我以ajax形式收到并需要放入mysql查询i试试这个 S
  • 如何在AWS中从快照创建Windows实例

    我的公司想要在 Amazon Web Service 中拍摄窗口的每日快照 我们可以毫无问题地拍摄快照 但是当我尝试从快照创建实例时 它总是创建一个 Linux ami 所以当服务器启动时 它总是无法通过健康检查 是否可以从快照创建 Win
  • Python逻辑运算符优先级[重复]

    这个问题在这里已经有答案了 哪个运算符优先4 gt 5 or 3 lt 4 and 9 gt 8 这会被评估为真还是假 我知道该声明3 gt 4 or 2 lt 3 and 9 gt 10 显然应该评估为 false 但我不太确定 pyth
  • 如何在oracle中将日期转换为时间戳(DD-MON-YYYY HH24:MI:SS.FF格式)?

    我尝试了下面的查询 但它不起作用 select TO TIMESTAMP ColumnName Data type Date DD MON YYYYHH24 MI SS FF from TableName where Changedate
  • 是否存在用于开放 xml Excel 编辑的良好包装类和/或库?

    我正在寻找一个不错的库 用于在我们的 Windows 服务器上编辑和 或生成 Excel 文档 我觉得 open xml sdk 可能是可行的方法 但对我来说 学习曲线似乎很陡峭 而且我们的开发时间有限 我认为编辑 Excel 文档不应该那
  • 应用程序传输安全已禁用,但仍然出现 SSL 握手错误

    我在通过 HTTPS SSL 连接到 API 时遇到问题 我已经使用下面的字典完全禁用了应用程序传输安全性 ATS 尽管 SSL 证书通过了 NSCURL 的所有测试
  • Youtube 退出全屏模式 TextView 可见性问题

    我正在全屏模式下播放视频 当我单击后退按钮时 我可以退出全屏模式 但无法显示我在全屏情况下隐藏的 TextView 要在全屏模式下隐藏 textView 我使用以下代码 Override public void onInitializati