2

在我的应用程序中,我有一个带有自定义适配器的 ListView,其中包含图像等数据,3-5 个 TextView。

这些数据是从网络服务器获取的,直到现在我正在展示一些东西

此项目发布于 2012 年 10 月 10 日

但我想把它改成类似

此项目于 6 天前发布

因此,它类似于每 1 分钟刷新一次 ListView,我不想使用adapter.NotifyDataSetChanged()或类似的东西,它使用新数据重新创建整个 ListView。

我只希望 TextView 单独更改背景并显示在 UI 上。

谢谢你

4

3 回答 3

2

一种选择是通过扩展 android TextView 类来创建自定义文本视图,并在其中放置一个时间任务,每分钟更新一次文本视图消息。

你也可以使用

http://developer.android.com/reference/android/widget/TextView.html#onVisibilityChanged(android.view.View , int) 来启动和停止定时器任务。

于 2012-10-16T09:31:18.937 回答
0

我不认为开箱即用。

由于您手头似乎已经有一个日期/日历,只需使用如下函数将其转换为相对时间字符串:http ://www.zachstronaut.com/posts/2009/01/20/php-relative-date-time -string.html

如果您想要实时更新,我认为您最好的选择是启动一个后台线程,为其提供 ListView 并定期更新可见项目,但是您可能希望更新所有项目以防止不一致。

于 2012-10-16T09:31:38.197 回答
0

作为参考,我建议您使用以下内容来更改 ListView。

1.您需要获取要更改 Textview 的特定项目的行视图。

2.现在从第 1 步开始,我相信你有你的行视图,所以在它的孩子中应用更改。

于 2012-10-16T09:32:58.493 回答