:: Enseignements :: ESIPE :: E4INFO :: 2014-2015 :: Interface Graphique avec Android ::
[LOGO]

Ma première activité Android, vues graphiques, layout simple et action



Exercice 1 - Echauffement

Le but de ce premier exercice est de créer un simple projet Android en utilisant l'environnement de développement Android Studio.
Pour cette première application, nous utiliserons l'icône par défaut.

  1. Lancer Android Studio et créer une application nommée HelloIR avec pour package fr.umlv.android.helloir.
    Comment choisir avec sagesse la version minimale du SDK à utiliser ?
  2. Qu'est ce qu'une Activity ?
  3. Une fois l'application créée, comment faire pour exécuter celle-ci dans l'émulateur ?
  4. Que décrit le fichier XML res/layout/activiy_main.xml ?
    Comment est-il relié à la classe fr.umlv.android.helloir.MainActivity ?
    A quoi sert la classe fr.umlv.android.R située dans le répertoire gen ?
    Comment est-elle mise à jour
  5. Consulter le contenu du fichier AndroidManifest.xml généré. A quoi sert-il ?
  6. Ajouter un champ de texte "Hello IR" au niveau de l'interface graphique. Pourquoi ne doit-on pas ajouter le contenu du texte en dur dans activity_main.xml?

Exercice 2 - Linear Layout


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:paddingLeft="16dp"
    android:paddingRight="16dp"
    tools:context=".MainActivity" >

    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:hint="To" />

    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:hint="Subject" />

    <EditText
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:gravity="top"
        android:hint="Message" />

    <Button
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:layout_gravity="right"
        android:text="Send" />

</LinearLayout>    
      
  1. Comment faire pour que le nom des champs de texte et du bouton ne soit pas entré en dur dans le fichier activity_main.xml ?
  2. On souhaite que lorsque l'utilisateur appuie sur le bouton "Send", un Toast s'affiche indiquant le sujet du message et à qui le message est envoyé.
    Comment créer et afficher un Toast (en utilisant Toast.makeText)?
    Comment associer une méthode dans MainActivity avec le click du bouton "Send" ?
    Comment récupérer une référence sur une View graphique dans cette méthode ?
    Comment récupérer le texte d'un EditText ?
  3. Comment faire pour mettre un bouton "Default" à gauche du bouton "Send" ? (en utilisant toujours le LinearLayout)
    Indication, on peut mettre des LinearLayout dans les LinearLayout.
    Coder la solution proposée.
    Faire en sorte que lorsque l'utilisateur appuie sur le bouton "Default", un Toast indiquant "DEFAULT" s'affiche. Implanter les trois solutions possibles. Quelle est la meilleure?
  4. On souhaite vérifier que le champ To est bien une adresse mail, pour cela changer le type de champ texte dans le layout/activity_main.xml.