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

2024-04-26

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

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


这是一个使用的示例代码视图树观察者:

final View viewTemp = convertView;

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

Notes:

  • 我不知道你的代码,也没有发布。代码viewTemp = convertView只是一个示例,使用适配器的代码。
  • 当出于多种原因绘制布局时,这是一个侦听器。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当 android View 在应用程序中可见时是否会触发任何事件? 的相关文章

随机推荐