【问题标题】:YouTubePlayerSupportFragment video goes black after scrolling recycler view but audio keeps playingYouTubePlayerSupportFragment 视频在滚动回收站视图后变黑但音频继续播放
【发布时间】:2018-05-15 09:19:37
【问题描述】:

所以我正在使用 YouTubePlayerSupportFragment 在回收站视图的单元格内播放 youtube 视频。

但是当我开始向下滚动并使用 YouTubePlayerSupportFragment 返回单元格时,视频变黑但我仍然可以听到音频播放。

有没有人遇到过同样的问题并设法解决了?

public void onBindViewHolder(ViewHolder holder) {
   holder.youTubePlayerFragment.initialize("KEY",
                new YouTubePlayer.OnInitializedListener() {
                    @Override
                    public void onInitializationSuccess(YouTubePlayer.Provider provider,
                                                        YouTubePlayer youTubePlayer, boolean b) {
                        youTubePlayer.cueVideo("ID");
                        youTubePlayer.play();
                    }

                    @Override
                    public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {
                        if (provider != null) {

                        }
                    }
                });
}

【问题讨论】:

  • 您需要控制触摸事件。当用户滚动时,只需暂停视频。
  • @Jyoti JK 当单元格不可见时它仍然变黑

标签: java android youtube


【解决方案1】:

当用户看不到这样的视图时,你必须暂停或停止视频:-

@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
    super.setUserVisibleHint(isVisibleToUser);
 if (!isVisibleToUser) {
      youTubePlayer.stop(); // or pause 
    }
}

【讨论】:

    【解决方案2】:

    所以我设法通过使用适配器的 onViewDetachedFromWindow 和 onViewAttachedToWindow 函数来解决这个问题。

    在 onViewAttachedToWindow 我添加 YouTubePlayerSupportFragment 并初始化视频,在 onViewDetachedFromWindow 我暂停视频并删除片段。

    这为我解决了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-18
      • 1970-01-01
      • 2017-09-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-16
      • 1970-01-01
      相关资源
      最近更新 更多