クリケット用のアプリを開発しています。その中で、私の目的は、ListView で特定のチームのプレーヤーを選択することです。ここでは、リストから複数のプレーヤーを選択できます。複数選択リストビューを備えたシンプルなアダプターを使用しています。
adapter=new ArrayAdapter<String>(this,R.layout.custom_list_view,R.id.textView_color,playersName);
lvview.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
そして、複数選択にcheckedTextViewを使用しています。以下はCheckedTextViewを使用した私のcustom_list_viewです
<CheckedTextView
android:id="@+id/textView_color"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:textAppearance="?android:attr/textAppearanceLarge"
android:gravity="center_vertical"
android:checkMark="?android:attr/listChoiceIndicatorMultiple"
android:paddingLeft="6dip"
android:paddingRight="6dip"
android:textColor="#FFffFF"
/>
そして今、私の問題は、ユーザーがリストから特定のプレーヤーを選択したときにリストビューの色を変更したいということです。どのプレイヤーが選択されているかをユーザーに示すのが好きです。選択していない選手と区別するために、選択した選手の色を赤に変えています。
lvview.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View v, int position,long id) {
// TODO Auto-generated method stub
SparseBooleanArray checked = lvview.getCheckedItemPositions();
if(checked.get(position))
{
//chkTextView.setTextColor(Color.GREEN);
counter_selected++;
selectedCounterText.setText("" + counter_selected);
}
else
{
counter_selected--;
selectedCounterText.setText("" + counter_selected);
}
}
});
選択したプレーヤーの色をデフォルトの色から赤に変更する方法。私はそれを行うのに苦労しています..それを見つけるのを手伝ってください..