gpt4 book ai didi

android - AppBarLayout.OnOffsetChangedListener onOffsetChanged 方法不断调用

转载 作者:行者123 更新时间:2023-11-29 23:52:07 25 4
gpt4 key购买 nike

我正在使用 OnOffsetChangedListener检测AppBarLayout偏移变化的接口(interface)。它工作正常,但问题是 onOffsetChanged方法不断调用。我怎样才能停止这个连续的通话。

   offsetChangedListener = (appBarLayout, verticalOffset) -> {
Log.i(TAG, "onOffsetChanged: verticalOffset: " + verticalOffset);

// Vertical offset == 0 indicates appBar is fully expanded.
if (Math.abs(verticalOffset) > 200) {
appBarExpanded = false;
invalidateOptionsMenu();
} else {
appBarExpanded = true;
invalidateOptionsMenu();
}
};

提前致谢。

最佳答案

找到问题的原因。每次 AppBarLayout 的偏移量发生变化时,代码都会调用 invalidateOptionsMenu() 方法。此 invalidateOptionsMenu() 方法重新创建 Menu 并导致 AppBarLayout 的偏移量更改。所以 onOffsetChanged 方法被一次又一次地调用。我删除了 invalidateOptionsMenu() 方法并更改我的逻辑以实现我的目标。

关于android - AppBarLayout.OnOffsetChangedListener onOffsetChanged 方法不断调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50785220/

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