gpt4 book ai didi

android - setOnApplyWindowInsetsListener 从未调用过

转载 作者:太空狗 更新时间:2023-10-29 14:36:51 34 4
gpt4 key购买 nike

我想计算导航条的高度。我看过这个演示文稿:https://chris.banes.me/talks/2017/becoming-a-master-window-fitter-nyc/

因此,我尝试使用 View.setOnApplyWindowInsetsListener() 方法。但是,出于某种原因,它从未被调用过。

有人知道为什么吗?有什么限制吗?

我试过这样使用它:

navBarOverlay.setOnApplyWindowInsetsListener { v, insets -> 
Timber.i("BOTTOM = ${insets.systemWindowInsetBottom}")
return@setOnApplyWindowInsetsListener insets
}

请注意,我的根布局是 ConstraintLayout

最佳答案

我遇到了同样的问题。

如果您的 Root View 是 ConstraintLayout 并且包含 android:fitsSystemWindows="true"属性,则该 View 会消耗 onApplyWindowInsets 回调。因此,如果您在 subview 上设置 onApplyWindowInsets,它们将永远不会获得 onApplyWindowInsets 回调。

或者检查您的父 View 使用回调。

关于android - setOnApplyWindowInsetsListener 从未调用过,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54062834/

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