我的应用程序包含多个视图(可滚动),其中一个是CustomView(扩展视图),当此视图进入可见区域时,是否有任何安卓事件被触发。
我在onAttachedToWindow
到onDetachedToWindow
的时间范围内使用后台线程的方法
该线程将使用customView.getGlobalVisibleRect(rectangle)
来检查视图的任何部分是否在屏幕上可见,但这是旋转锁定方法,是否有更好的方法来检测可见性,任何在我可以调用{{1 }}
答案 0 :(得分:9)
以下是使用 ViewTreeObserver :
的一个示例代码final View viewTemp = convertView;
convertView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
int rowHeight = viewTemp.getGlobalVisibleRect();
...
});
注意:
viewTemp = convertView
只是一个示例,代码来自使用适配器。