Publié le 09/04/2015
Auteur Axel
Réseaux sociaux
0 partages
0 tweets
0 plus
0 commentaires

Afficher un ListView de string

Le composant ListView est un objet de type liste qui permet à l'utilisateur de choisir une valeur. Dans une fenetre Android, il est possible d'afficher toutes de sortes de listes par exemple du texte et une icone. Dans l'exemple ci-dessous, nous avons voir le cas le plus simple: une liste de string dans laquelle l'utilisateur sélectionne une valeur.

Interface graphique de la liste

Le layout est basique et la fenetre pourrait correspondre à une interface de paramétrage de l'application Android. Un exemple de layout contenant une liste de string, l'alignement est fixé à l'ensemble de la surface disponible.

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:orientation="vertical" >
    <ListView
        android:id="@+id/listView1"
        android:layout_width="match_parent"
        android:layout_height="match_parent" >
    </ListView>
</LinearLayout>

Dans la class JAVA, nous allons ajouter dynamiquement les éléments à afficher à l'utilisateur. L'aspect de la fenetre Android est proche de la copie d'écran issue de ma tablette

1167-listview-string

Code source du ListView sous Android

En fait, il n'y a pas grand à faire pour afficher les éléments dans la liste du layout. Pour le texte à afficher dans le ListView, chaque élément est déclaré un tableau statique nommé tab. En ce qui concerne les actions de l'utilisateur, un listener est ajouté à la liste Android pour ensuite déterminer quel élément a été choisi.

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;
 
/**
 * Afficher un ListView de string
 * http://www.fobec.com/java/1167/afficher-listview-string.html
 * @author Axel avril 2015
 */
public class MainActivity extends Activity {
 
    //Composant liste
    protected ListView lv;
    //Element de la liste
    public String[] tab = {"Element 1", "Element 2", "Element 3"};
 
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
 
        //Trouver l'objet ListView 
        lv = (ListView) findViewById(R.id.listView1);
        //créer les items
        ArrayAdapter arrayAdapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, tab); 
        // associer l'adaptateur au listView  
        lv.setAdapter(arrayAdapter);
 
        //Ajouter l'evenement click
        lv.setOnItemClickListener(new OnItemClickListener() {
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
                if (position >= 0 && position < tab.length) {
                    String s = "Vous avez selectionné "+tab[position];
 
                    // Afficher le Toast                                           
                    Toast msg = Toast.makeText(MainActivity.this.getApplicationContext(), s, Toast.LENGTH_LONG);
                    msg.show();
                }
            }
        }); 
    }
}

Pour mon projet calculatrice, je cherchais comment afficher une liste de paramètre sous Android. L'utilisateur pourra choisir le skin à appliquer sur l'interface de l'application. Les exemples trouvés me paraissaient compliqués et donc voila un exemple pour créer une liste de string dans un ListView Android.

Ajouter un commentaire

Les champs marqués d'un * sont obligatoires, les adresses emails se sont pas publiées.

A lire aussi

Réseaux sociaux
Présentation de l'article
Catégorie
java - android
Mise a jour
09/04/2015
Visualisation
vu 3112 fois
Public
Internaute
Auteur de la publication
Axel
Membre junior
Auteur de 51 articles
|BIO_PSEUDO|
Commentaires récents

Publié par Alpcom dans java

Salut , juste signaler une petite faute de frappe dans mouseDragged
ce n'est pas int y = p.y - newPos.x;
int y = p.y - newPos.y; !! des comportements curieux apparaissaient sinon merci beaucoup...

Publié par Mohamed dans java

Merci beaucoup j'ai eu un probleme de redimensionnement des images , mes images perdaient leur qualite, ta solution m'a aide pour ca mercii

Publié par lamardiallo48 dans java

trop bon ton code ca m'a beaucoup aide. Merci

Publié par Julie dans logiciel

C'est donc un moteur de recherche specialise. On peut vraiment rechercher tous les domaines que l'on veut. Cela permettrait aux gens de ne plus se faire arnaquer. Quelle bonne idee!

Publié par hhhhh dans java

oooooooooooooooooooo