gpt4 book ai didi

android - RecyclerView - 当 View 不再可见时回调

转载 作者:IT老高 更新时间:2023-10-28 22:02:43 36 4
gpt4 key购买 nike

我有一个带有适配器和 LayoutManager 的 RecyclerView。 Adapter 有大约 15 个不同的 ViewHolders。其中之一包含加载外部内容的 WebView(其中 99% 是 YouTube 之外的视频)。当适配器的任何 View 离开屏幕时就会出现问题 - WebView 中的视频继续播放并且声音正在播放。不过,这对我来说是可以接受的。

当我移动到另一个 Activity 时,关键问题就开始了。视频的声音仍然存在。

当 RecyclerView 的任何 subview 更改可见性状态(即从显示中消失)时,RecyclerView 是否可以通知我?

最佳答案

我会回应自己。最好的方法是将 RecyclerView.OnChildAttachStateChangeListener 添加到我的 RecyclerView 中,然后在调用 onChildViewDetachedFromWindow(View view) 时使用我的 WebView 处理事件。

例子:

mRecyclerView.addOnChildAttachStateChangeListener(new RecyclerView.OnChildAttachStateChangeListener() {
@Override
public void onChildViewAttachedToWindow(View view) {
WebView webView = (WebView) view.findViewById(R.id.webview);
if (webView != null) {
webView.onResume();
}
}

@Override
public void onChildViewDetachedFromWindow(View view) {
WebView webView = (WebView) view.findViewById(R.id.webview);

if (webView != null) {
webView.onPause();

}
}
});

关于android - RecyclerView - 当 View 不再可见时回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31683811/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com