gpt4 book ai didi

android - 回收站 View : callback for view when fully visible

转载 作者:太空宇宙 更新时间:2023-11-03 13:52:23 28 4
gpt4 key购买 nike

这是用例:

我有一个包含 5 个食品 ImageView 的回收 View 列表:

  1. 西瓜
  2. 芒果
  3. 桃子
  4. 苹果
  5. Guava

我想记录一个输出 (Log.e(TAG, "Peach shown!") 当用户滚动过去时桃 ImageView 在回收 View 中完全可见。

是否有当 View 在回收 View 中完全可见时调用的回调?我几乎想把方法findFirstCompletelyVisibleItemPosition () 变成一个回调方法:http://developer.android.com/reference/android/support/v7/widget/LinearLayoutManager.html#findFirstCompletelyVisibleItemPosition()

我读了这个帖子: RecyclerView - callback when view is no longer visible并在这里查看文档 http://developer.android.com/reference/android/support/v7/widget/RecyclerView.OnChildAttachStateChangeListener.html但我看到回调方法 onChildViewAttachedToWindow() 在以下情况下被调用:

Called when a view is attached to the RecyclerView.

附加可以在 View 实际显示之前。

我可以想到一种非常低效的方法:

  1. 在你的 recyclerview 上设置 RecyclerView.OnScrollListener

  2. onScrolled 方法中调用mLinearLayoutManager.findFirstCompletelyVisibleItemPosition()。检查返回的整数是否等于 3。

每次 recyclerview 滚动时,都会执行数百次计算。

最佳答案

正如您提到的,您实际上应该在 onScrolled() 方法中处理它。 findFirstCompletelyVisibleItemPosition() 方法非常高效,进行的计算不会影响大多数设备,包括低端设备。

作为旁注,我认为您需要的是 findLastCompletelyVisibleItemPosition() 方法。

去过那里,做过:-)

关于android - 回收站 View : callback for view when fully visible,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33631373/

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