3

我通过我的应用程序录制了视频,并存储在存储卡中。

在我得到这些视频并添加到列表视图之后。

根据屏幕尺寸,用户只能看到一个视频。

如果用户上下滚动并停止。

那时我想知道哪一个在用户面前。

如果有人知道解决方案,请帮助我。或任何其他方式

提前致谢

4

4 回答 4

11

好的,有两种方法可以帮助你。

ListView.getFirstVisiblePosition()
ListView.getLastVisiblePosition()

查看此页面了解详情。

于 2013-07-19T09:56:20.930 回答
0

由于您只显示一项列表,因此您可以在 Adapter 类中创建一个函数,该函数将为您提供当前可见子项的 id。喜欢

公共类 MyAdapter 扩展 BaseAdapter{ int slectedChild; // selectedChild 将保存当前可见的孩子的 id

public int getSelectedChild(){ // 这个函数将返回当前可见子的 id
return selectedChild;
}

// public View getView(int position, View convertView, ViewGroup container)
{

selectedChild=位置;// 更新 getView() 函数中的 selectedChild 值。
....
}
}

于 2013-07-19T10:03:32.573 回答
0

如果您使用适配器来填充列表,则最后一个可见项目将是弹出到最新getView中的项目。

这意味着,如果您要跟踪最新的内容Position- 您将存储最后一个可见项目的位置。

于 2013-07-19T09:53:48.793 回答
0

鉴于 Marek Sebera 的评论 - 确实getView不会 100% 可靠,您可以getFirstVisiblePosition在适配器中使用。

(如果一次只能看到一个视频,这就足够了。)

于 2013-07-19T09:56:33.130 回答