gpt4 book ai didi

android - ViewTreeObserver 添加 OnScrollChangedListener 后不调用 onScrollChanged

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:40:49 26 4
gpt4 key购买 nike

我有一个带有 webview 和按钮的布局。该按钮是可见的,但一旦滚动 web View 就会变得可见。我正在使用 ViewTreeObserver,但由于某种原因,未调用 onScrollChanged。我是否误解了 onScrollChanged 的​​调用方式?

this.licenseAgreementView = (WebView) findViewById(R.id.licenseAgreementView);
ViewTreeObserver observer = this.licenseAgreementView.getViewTreeObserver();
observer.addOnScrollChangedListener(new OnScrollChangedListener() {
public void onScrollChanged() {
makeButtonVisible();
}
});

最佳答案

在我的例子中,我必须将 GlobalLayoutListener 附加到我的 scrollView,然后在 LayoutChanged 上我必须添加 scrollListener。

scrollView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
ViewTreeObserver observer = scrollView.getViewTreeObserver();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
observer.removeOnGlobalLayoutListener(this);
} else {
observer.removeGlobalOnLayoutListener(this);
}
observer.addOnScrollChangedListener(new ViewTreeObserver.OnScrollChangedListener() {
@Override
public void onScrollChanged() {
//Your code here
}
});
}
});

这对我有用。

关于android - ViewTreeObserver 添加 OnScrollChangedListener 后不调用 onScrollChanged,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11024407/

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