2011-12-28 4 views
0

新しく追加されたリストビュー行の背景色を変更したい。私のlistviewはカスタムアダプターに基づいており、レイアウトxmlを使用してレイアウトが拡張されています。私は多くのソリューションを試しましたが、何とか機能していません。私はリストビューの行要素を取得することができません。おかげさまで Android Listviewの新しく追加された行の背景色を変更する

+1

カスタムアダプターを使用していますか?カスタムアダプターを使用している場合のみ可能です。 –

+1

サンプルコードを投稿してもよろしいですか? – Chase

答えて

0

あなたがここに加えて

http://developer.android.com/reference/android/widget/BaseAdapter.html

をもっと勉強することができ、あなたはここでのキーワード「カスタムアダプタ」

で検索することができますいくつかあります。

custom adapter for gridview in android

+0

新しい行を取得し、背景色を変更することとは何が関係していますか?私はアダプターに問題はありません。 –

0

実装の目標は、あなたが次のロジックを実装することができ、別の色でアダプタで新しく追加されたアイテムを表示する場合。

あなたが既に持っているカスタムアダプター。 新しく追加されたアイテムを追跡する別のArraylist。 このarraylistに新しいアイテムを追加します。

getView()メソッドで、アダプタからのこの項目がこの補助配列に存在するかどうかを確認します(存在する場合)。返されるビューの背景色を変更します。

タイマーの後に、補助アイテムからこれらの要素を削除したい場合があります。

アダプターに既に存在するオブジェクトへの参照を保存していて、新しいコピーを作成しないため、メモリー消費量が大きすぎることはありません。

0

ListViewで表示するデータを配列またはデータベースに保存する場合、リストアダプターを設定した後に配列のサイズをSharedPreferencesに保存する必要があります。今度はリストビューに5つの要素があり、それを保存しているとします。8つの要素がある場合は8-5 = 3になります。最後の3要素が新しく、SharedPreferencesが8でオーバーライドされます。

public View getView(int i, View convertView, ViewGroup parent) 

整数iは:あなたが関数内のすべての値および行の位置を持っているので)、カスタムの最後の3つの要素の背景を変更listadapter。

関連する問題