【问题标题】:how to know from adapter if the item of ListView is visible or not?如何从适配器知道 ListView 的项目是否可见?
【发布时间】:2012-06-24 12:43:31
【问题描述】:

我有一个连接到 ListView 的适配器,例如

mJournalAdapter = new JournalAdapter();
journalEntryList.setAdapter(mJournalAdapter);

并且我想知道在我的JournalAdapter 内部是否可以看到某些视图(ListView 的项目),这可能吗?

【问题讨论】:

    标签: android listview adapter baseadapter


    【解决方案1】:

    如果您知道该项目的位置,那么您可以使用

    int last = listView1.getLastVisiblePosition();  
    
    int first = listView1.getFirstVisiblePosition();
    

    【讨论】:

      【解决方案2】:

      你可以获得回调,覆盖OnDetachedFromWindow();视图中的方法

      【讨论】:

      • 这不是你在ListView 中应该做的事情。你在重新发明轮子。其他 2 个答案是合法的。
      • 这不是重新发明轮子。事实上,这是一种很好的处理与 listview/recyclerview/adapter 分离的视图回收的方法
      【解决方案3】:

      您可以使用getFirstVisiblePosition() 将在 ListView 中为您提供第一个可见项,因此您可以在您的情况下使用它。

      【讨论】:

        猜你喜欢
        • 2014-02-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多