J'ai un ListView dans ma disposition. Voici la mise en page pour l'élément de liste.Problème Android lié OnItemClickListener de ListView
shopitem.xml
<?xml version="1.0" encoding="utf-8"?>
<TwoLineListItem xmlns:android="http://schemas.android.com/apk/res/android"
android:paddingTop="2dip"
android:paddingBottom="2dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:mode="twoLine">
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/text1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingTop="6dip"
android:paddingLeft="44dip"
android:textStyle="bold"
android:lines="1"
android:textColor="#FFFFFF"/>
<ImageView
android:id="@+id/playBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="3dip"
android:layout_alignRight="@android:id/text1"
android:src="@drawable/btnplaypreview"/>
</TwoLineListItem>
Maintenant, je veux mettre un changement d'image dans playBtn
OnItemClickListener. Pour cela, j'utilise le code suivant.
ListView shopActivityListView = (ListView) findViewById(R.id.shopActivityListView);
shopActivityListView.setCacheColorHint(Color.TRANSPARENT);
shopActivityListView.setAdapter(new ArrayAdapter<String>(getApplicationContext(), R.layout.shopitem, trackArr[1]));
shopActivityListView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View vItem, int position, long id) {
// TODO Auto-generated method stub
ImageView playBtn = (ImageView) vItem.findViewById(R.id.playBtn);
playBtn.setImageResource(R.drawable.eq12);
}
});
Mais rien ne se passe sur itemclick. J'ai vérifié que la méthode onItemClick
est en cours d'exécution sans aucune exception. Mais rien ne change. Quel est le problème dans mon code?
TwoLineListItem est une extension linearlayout? Essayez d'ajouter 'android: clickable =" true "' –
J'ai essayé cela. Pas de changement. –
Invalidez votre listview après playBtn.setImageResource (R.drawable.eq12) ;. –