在webview上播放的视频iframe和webview设置在回收卡视图上。许多视频都是回收者视频。
我想在用户开始滚动回收器时暂停播放视频,并在用户播放另一个视频时暂停播放视频。
查看代码
public void onBindViewHolder(final ViewHolder holder, final int position) {
holder.webView.getSettings().setUseWideViewPort(true);
holder.webView.getSettings().setLoadWithOverviewMode(true);
holder.webView.getSettings().setSupportZoom(true);
holder.webView.getSettings().setBuiltInZoomControls(true);
holder.webView.getSettings().setDisplayZoomControls(false);
holder.webView.getSettings().setJavaScriptEnabled(true);
holder.webView.loadData("<iframe src=\"https://www.youtube.com/embed/" + video_id.get(position) + "?rel=0&showinfo=0\" width=\"1280\" height=\"720\" scrolling=\"no\" frameborder=\"0\" allowTransparency=\"true\" allowFullScreen=\"true\"></iframe>", "text/html", "utf-8");
}
我试图用这个:
recyclerView.addOnChildAttachStateChangeListener(new RecyclerView.OnChildAttachStateChangeListener() {
@Override
public void onChildViewAttachedToWindow(View view) {
visibleWebView.add(webView);
}
@Override
public void onChildViewDetachedFromWindow(View view) {
webView.onPause();
}
});
请帮我解决这个问题。 任何帮助将不胜感激。 谢谢!
答案 0 :(得分:1)
对于android studio web视图中的暂停视频,您可以使用webview.onPause首先设置onscroll更改侦听器以获取回收器视图,并在回收器视图滚动时暂停Web视图。但是,如果您将图片视图放在webview上以获取缩略图,那么它们将成为一个问题,那么您将无法获得播放事件。 因此,如果您要自定义webview事件,这将是非常有用的。这将非常有帮助。 谢谢你的帮助。 : - )
答案 1 :(得分:0)
我认为没有办法做到这一点。我也尝试对此进行一些研究。但是,甚至没有找到任何可以做到这一点的方法。