时间图像在显示屏上可见 Android

Time image is visible on display Android

在我的 activity 中,我有一个带有扩展 ArrayAdapter 的自定义适配器的列表视图。 现在我的列表视图就像 Instagram 或 Facebook 的主页。有很多用户发布的图片。每个列表视图项目的高度大约是屏幕的高度。我想做的是计算用户观看图像的毫秒数。这意味着图像在屏幕上的显示量。

有人能帮忙吗?谢谢。

您可以使用计时器class来计算时间。

  • 从头开始计时。
  • 在使用 OnScrollListener 的每个滚动中使用 getFirstVisiblePosition() 检查当前可见的项目。
  • 如果位置发生变化,增加相应项目的观看时间并重置计时器。
  • 当项目部分可见时,您可以使用 listItem.getTop()listItem.getBottom( ) 并假设用户现在正在查看可见部分较高的项目。 (你说的是"Each listview item height is approximally the height of the screen"。所以,一次最多只能有两个项目)

注意:查看某个项目的观看时间时,如果是当前项目,请不要忘记添加计时器的值。