gpt4 book ai didi

android - 当 Android View 在应用程序中可见时是否会触发任何事件?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:42:55 29 4
gpt4 key购买 nike

我的应用程序包含多个 View (可滚动),其中之一是 CustomView(扩展 View ),当此 View 进入可见区域时是否会触发任何 android 事件。

我的方法是在 onAttachedToWindowonDetachedToWindow 的时间范围内使用后台线程该线程将使用 customView.getGlobalVisibleRect(rectangle) 来检查 View 的任何部分是否在屏幕上可见,但这是自旋锁方法,是否有更好的方法来检测可见性,任何获取的事件在我可以调用 getGlobalVisibleRect

的地方触发

最佳答案

这是一个使用 ViewTreeObserver 的示例代码:

final View viewTemp = convertView;

convertView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
int rowHeight = viewTemp.getGlobalVisibleRect();
...
});

注意事项:

  • 我不知道您的代码,也没有发布。代码 viewTemp = convertView 只是一个示例,使用适配器的代码。
  • 当出于多种原因绘制布局时,这是一个监听器。

关于android - 当 Android View 在应用程序中可见时是否会触发任何事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31995545/

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