TP4 question [résolu]

Modérateurs : Douin, F. Lemoine, Farinone

LudovicF
Messages : 29
Inscription : 20 févr. 2017 15:45

TP4 question [résolu]

Message par LudovicF » 09 mars 2017 16:37

Bonjour,

Pour la question 13, je ne sais pas ou mettre le setOnClickListener de la liste des Stations pour rendre une station clickable ?

Je l'ai ajouté dans le onPostExecute et j'ai ajouté une activity dans le AndroidManifest mais j'ai l'erreur suivante.

Avez vous une idée SVP

Image
Dernière édition par LudovicF le 17 mars 2017 18:25, édité 1 fois.

Douin
Messages : 162
Inscription : 18 mars 2009 15:46

Re: TP4 question

Message par Douin » 09 mars 2017 17:23

Bonjour,

Votre Activity est-elle une ListActivity ? préférez la redéfinition de onItemClick

à suivre...

LudovicF
Messages : 29
Inscription : 20 févr. 2017 15:45

Re: TP4 question

Message par LudovicF » 09 mars 2017 17:51

Non ma class ListingDesStationsActivity est extends de AppCompatActivity comme dans l'exemple du cours et si je lance application elle plante au démarrage.

Ma class StationsActivity est extends Activity elle a pour bute d'afficher un Station de Velib de la liste.

Si je modifie ListingDesStationsActivity en extends ListActivy j'ai toujour le même problème.

Extrait du début de ma class ListingDesStationsActivity :

Code : Tout sélectionner

public class ListingDesStationsActivity extends AppCompatActivity {
    private ListView listing;
    private StationsParser sp;
    private ProgressDialog progress;
    private StationsAdapter leStationsAdapter;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.filtre_stations);
        listing = (ListView) findViewById(R.id.listViewFiltreStations);
        // a compléter par la définition de la classe interne à cette méthode
        // class ChargementDesStationsTache extends AsyncTask<Void, Void, Void>
        // ainsi que l'instanciation et le lancement de la méthode execute()
        // sur cette instance
        new ChargementDesStationsTache().execute();
    } 

khris
Messages : 28
Inscription : 25 mars 2014 18:10
Contact :

Re: TP4 question

Message par khris » 11 mars 2017 18:43

Hello,

Le problème vient de la méthode que tu utilises pour ajouter un listener à ta ListView.

Tu fais :
listing.setOnClickListener(new OnItemClickListener(/*Ton code*/));
Tu ajoutes un OnItemClickListener à une méthode qui attend un OnClickListener.
En plus, avec cette méthode tu rends l'ensemble de ta listview cliquable mais tu ne pourras pas capter le clic pour un seul item.

La bonne méthode à appeler est
listing.setOnItemClickListener(new OnItemClickListener(/*Ton code*/));

Ça devrait régler ton problème :)

LudovicF
Messages : 29
Inscription : 20 févr. 2017 15:45

Re: TP4 question

Message par LudovicF » 15 mars 2017 11:21

Merci khris, ça ma bien débloqué :-)

Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité