2

私のアプリケーションでは、画像、3-5 TextViews のようなデータを含むカスタム アダプターを備えた ListView があります。

このデータは Web サーバーから取得され、今までは何かを表示していました

この商品は 2012 年 10 月 10 日に投稿されました

しかし、私はそれを次のようなものに変更したい

この商品は 6 日前に投稿されました

したがって、1分ごとにListViewadapter.NotifyDataSetChanged()を更新するようなものです。使用したくないか、新しいデータでListView全体を再作成するようなものです。

その TextView だけがバックグラウンドで変更され、UI に表示されるようにしたいだけです。

ありがとうございました

4

3 に答える 3

2

1 つのオプションは、android TextView クラスを拡張してカスタム テキスト ビューを作成し、テキスト ビュー メッセージを 1 分ごとに更新するタイム タスクを配置することです。

を使用することもできます

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を変更したい特定のアイテムのRow Viewを取得する必要があります。

2.ステップ1から、行ビューがあると思うので、その子に変更を適用します。

于 2012-10-16T09:32:58.493 に答える