Android tuto : Afficher des données d'une base Sqlite dans une ListView en utilisant CursorAdapter
Le tutoriel suivant permet juste d'afficher les données d'une base interne SQLite dans une ListView, si vous voulez apprendre à créer et gérer une base de données interne SQLite avec toute les opérations nécessaires vous devez suivre cette série :
Android SQLite
L'objectif de ce tutoriel est d'obtenir des données d'une base de données SQLite en utilisant la classe SimpleCursorAdapter (sur-couche du CursorAdapter permettant de lier un modèle XML aux données) et d'attacher ces données à une ListView. Dans cet exemple, nous créons une base de données de pays, et nous allons insérer certains pays quand l'activité commence. Après cela, nous créons un SimpleCursorAdapter et l'attacher au curseur "cursor" fourni en résultat de la requête de sélection de la base de données. Les colonnes de données retournées par le curseur sont alors mappé à notre vue personnalisée pour l'affichage.
C'est quoi "cursor"? :Cette interface offre un accès aléatoire en lecture-écriture à l'ensemble de résultats retourné par une requête de base de données.
Notre table nommée Country dans cette base de données nommée World aura cette forme:
Créez un nouveau projet avec Android Studio.
Notre table nommée Country dans cette base de données nommée World aura cette forme:
id
|
code
|
name
|
continent
|
region
|
1
|
TN
|
Tunisia
|
Africa
|
Maghreb
|
Créez un nouveau projet avec Android Studio.
Remplissez les détails et le nom de votre projet.
Nom de l'application: Listsqlite
Nom du package: com.tuto.listsqlite
Avant d'aller plus loin, vous avez besoin de créer votre classe de pays (Country) avec toutes les méthodes getter et setter pour faire de chaque pays unique un objet.(Il s'agit de la classe Pojo).
Créer une nouvelle classe avec le nom de Country.java et mettez ce code :
Après ceci il faut créer un nouveau fichier xml (layout_country_info.xml) dans le dossier layout qui permet de personnaliser les items de notre ListView :
Il reste maintenant de s’intéresser à notre activité principale MainActivity.java :
HOW DELETE ON touch???
RépondreSupprimerje veux savoir coment supprimer lorsque on clique jai essyer de faire rien?? ca marche pas
RépondreSupprimerIl existe déjà une méthode dans la classe DataBaseHelper qui permet de supprimer tous les pays" public boolean deleteAllCountries()".
SupprimerIl suffit de créer un bouton dans le MainActivity et appeler cette méthode dans la méthode onClick() du bouton
non je voulais un seul pays dans tout les cas jai fait mais est que vous avez une methode d'une facon dynamique
Supprimer???
Essayes celle là dans la classe DataBaseHelper avec modification du nécessaire :
Supprimerpublic void deleteCountry(Country c) {
SQLiteDatabase db = this.getWritableDatabase();
db.delete(SQLITE_TABLE , KEY_CODE + " = ?",
new String[] { String.valueOf(c.getCode()) });
db.close();
}
merci j'ai utilise public void delete(String id) {
RépondreSupprimermDb.delete(SQLITE_TABLE, KEY_ROWID + "=" + id, null);
}
merci de toute facon jai termine l'application voici la vid https://www.youtube.com/watch?v=_ZzU--ykgcE il me reste que la creation des table de facon dynamique merci pour la reponse
Ce commentaire a été supprimé par un administrateur du blog.
RépondreSupprimerJ'ai une erreur du genre : column '_id' does not exist
RépondreSupprimerPeut tu m'aider?