检查是否显示可扩展列表第一项

时间:2015-03-11 06:45:38

标签: android expandablelistview visibility listitem

我正在编写代码,我需要检查可扩展列表的第一项是否可见。

为此,我使用AbsListView.OnScrollListener.onScroll(..firstItem, visibleItemCount..)进行了检查,但如果列表扩展,则无法正常工作。

还有任何方法可以确定第一项是否完全可见。

这里有任何建议!

1 个答案:

答案 0 :(得分:0)

以下解决方案为我工作:

public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {

        if(expListView.getChildAt(firstVisibleItem) != null) { // 1
            int top = expListView.getChildAt(firstVisibleItem).getTop();

            if(top >= 0) { // 2
                if(this.firstVisibleItem != firstVisibleItem) { // 3
                    if(view != null){
                        this.firstVisibleItem = firstVisibleItem;
                    }
                }
            }
        }
    }
  1. 确保可见视图项不为空。
  2. 检查向第一个显示的项目移动。即,对于我要检查的第一个列表项,您可以删除此选项。
  3. 放弃相同的项目请求:执行其他操作非常重要,您将接到多个电话。