2017-10-05 2 views
0

Je travaille sur un lecteur vidéo et j'ai un ListView personnalisé d'images. Lorsque je sélectionne une image, la vidéo correspondante sera lue. Je veux que l'image dont la vidéo est en cours de lecture devienne invisible pour l'utilisateur. Lorsque je sélectionne une autre image, elle devient invisible et la précédente devient visible.Masquer l'élément sélectionné de la vue de liste

choses que je veux sur écoute de sélection à faire:

1. Hide the selected item from list. 
2. After when another element is selected, show the previous one and hide the selected one. 

Répondre

2

Créer une variable globale pour stocker l'élément sélectionné de listview

private int mItemClicked=-1; 

Lorsque vous cliquez un VideoView dans la méthode onclick sauver positionner l'élément cliqué et appeler

videoView.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     mItemClicked=position; 
     notifyDataSetChanged(); 
    } 
}); 

Puis dans la méthode getView vérifier si la position est déjà sélectionnée ou pas comme ça

if(mItemClicked==position){ 
    //Hide the list item 
}else{ 
    //Show the list item 
} 
0

obtenir l'ID ou la position de l'élément et ajouter supprimer cet élément de la liste et ajouter plus tard que l'un et enlever un autre

Merci

+0

pouvez-vous s'il vous plaît me donner un exemple comme celui-ci –