私はListViewを持っていて、リスト項目をクリックすると別のアクティビティが開始されます。リストの背景の問題を変更する
リストアイテムをクリックすると、背景が変わり、別のアクティビティに移動し、このアクティビティを押すと、リストアイテムはその背景色を保持するはずです。もう一度別のリストをクリックすると、以前の背景色が削除され、同じことが繰り返されます。
ありがとうございます。
私はListViewを持っていて、リスト項目をクリックすると別のアクティビティが開始されます。リストの背景の問題を変更する
リストアイテムをクリックすると、背景が変わり、別のアクティビティに移動し、このアクティビティを押すと、リストアイテムはその背景色を保持するはずです。もう一度別のリストをクリックすると、以前の背景色が削除され、同じことが繰り返されます。
ありがとうございます。
は私がsetItemChecked () methoodによってそれを解決し、使用をアンドロイド:=「singleChoice」choiceMode私のレイアウトxmlファイル内のリストビュー。私は、リスト内の項目をクリックする上でMyClass.this.getListView().setItemChecked(position,true);
を使用し、getViewメソッドの()私はこれをやっている...私も同じ問題に直面しています
if(position == MyClass.this.getListView().getCheckedItemPosition()){
holder._newsLinear.setBackgroundColor(Color.CYAN);
}
else{
holder._newsLinear.setBackgroundColor(Color.BLACK);
}
ListViewにsetItemChecked()
メソッドが必要です。リスナーのonItemClick()
メソッドに配置すると、これによってアイテムが「永続的にオン」になるはずです。次のアクティビティに移動するときは、ListView
のどのアイテムがクリックされたかを保存するには、onSaveInstanceState()
とonRestoreInstanceState()
を使用する必要があります。私はあなたがListView
でActivity
から離れて移動するときに、Androidがクリックされたものを保持するとは思わない。
デベロッパーのウェブサイトhereの[フラグメント]セクションには、このチュートリアルがあります。
これが役に立ちます。
あなたの返信ありがとう...ありがとう、しかし私はonSaveInstanceState()を使用せずにそれを解決しました。 – Sujit
選択したアイテムを追跡します。カスタムアダプターを使用し、getView
メソッドをオーバーライドします。このメソッドでは、ビューの位置が選択された項目であるかどうかをチェックし、それに応じてビューの背景を変更します。
お返事ありがとうございます。上記の私の答えを見てください。 – Sujit
オーバーライド項目のクリックリスナーとやるクリックしたビューの色に変更するには、次
listView1.setOnItemClickListener(new ListView.OnItemClickListener()
{
public void onItemClick(AdapterView<?> arg0, View v, int arg2, long arg3)
{
v.setBackgroundColor(Color.BLACK);
}
});
ですが、リストをスクロールすると、黒い背景がリスト項目にランダムに設定されます。 – Sujit
こんにちはsujitは、私は、リストclick..andにその背景色を変更することを意味しますあなたと同じur問題と同じ私のためのソリューションを提供することができます私はあなたに大きな感謝とあなたは私の保護者(神).vv感謝電子メールID:[email protected] – SRam
私はすでに以下の私の答えを追加します。 .. – Sujit