Android ExpandableListView: establece el color de fondo del elemento seleccionado al hacer clic
Estoy tratando de establecer un color de fondo para el elemento cuando el usuario hace clic en un elemento secundario en miexpandableListView
.
Aquí está el código:
expListView.setOnChildClickListener(new OnChildClickListener() {
@Override
public boolean onChildClick(ExpandableListView parent, View v, final int groupPosition, final int childPosition, long id) {
AlertDialog.Builder builder = new AlertDialog.Builder(New_annonce_act_step2.this);
builder.setMessage("Vous avez choisi la catégorie " +listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition) +", Continuer ?")
.setPositiveButton("Oui", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Intent myIntent = new Intent(New_annonce_act_step2.this, New_annonce_act_step22.class);
myIntent.putExtra("titre", titre);
myIntent.putExtra("categorie", categorie);
New_annonce_act_step2.this.startActivity(myIntent);
finish();
overridePendingTransition(R.anim.left_to_right, R.anim.right_to_left);
}
})
.setNegativeButton("Non", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// User cancelled the dialog
}
});
// Create the AlertDialog object and return it
builder.create();
builder.show();
return false;
}
});
Aquí está la declaración ExpandableListView en diseño:
<ExpandableListView
android:id="@+id/nouvelle_annonce_categorie"
android:layout_width="match_parent"
android:layout_height="320dp"
android:layout_marginLeft="1dp"
android:layout_marginRight="1dp"
android:choiceMode = "singleChoice"
android:listSelector = "@drawable/selector_categorie_item"
android:layout_marginTop="15dp" />
Y aquí está el coe de selector_categorie_item.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android"
android:exitFadeDuration="@android:integer/config_mediumAnimTime">
<item android:drawable="@android:color/holo_blue_bright" android:state_pressed="true"/>
<item android:drawable="@android:color/holo_blue_light" android:state_selected="true"/>
<item android:drawable="@android:color/holo_blue_dark" android:state_activated="true"/>
</selector>