Vous êtes sur la page 1sur 11

Youssef Missaoui High-Tech

Android
TP1


Youssef Missaoui High-Tech
Cration dun projet Android

Pour commencer, cliquez sur File => New => Android Application Project
Il se peut que le menu Android Project ne soit pas directement disponible, il faut alors
faire File >>> New >>> Other >>> Android >>>Android Project. Une fentre de cration de
nouveau projet Android va souvrir et vous devrez y renseigner le nom du projet, la version
minimal du SDK, le nom de lapplication, le nom du package, le nom de lactivit cre
automatiquement et enfin indiquer le numro de lAPI de la version du SDK.



Le nom du package se forme votre convenance pas trop de changement par rapport au
dveloppement JAVA. La checkBox Create Activity permet de crer demble une
activit, cest dire une classe java qui sera excute par lintermdiaire de vues. Le nom de
cette activit ne doit pas tre obligatoirement le mme que celui du projet ou de
lapplication.




Youssef Missaoui High-Tech


Youssef Missaoui High-Tech
Cliquez sur terminer, on va avoir un projet avec la structure suivante :












Configuration dun nouvel AVD (Android Virtual Device)




La fentre AVD Manager apparait cliquez sur New.

Youssef Missaoui High-Tech












Sans rien toucher au projet compilez et lancez lapplication, pour cela faites un clic droit sur
le projet puis Run as >>> Android Application




Youssef Missaoui High-Tech
Normalement aprs un certain temps de chargement (le dmarrage de lmulateur peut
savrer trs lourd), vous devriez voir apparaitre :

Android : JAVA et surtout XML
La programmation sous Android ncessite dutiliser du XML. Double cliquez sur le fichier
string.xml situ dans res >> values et modifiez lattribut app_name en lui indiquant dans le
champ Value Bonjour (par exemple).
Vous venez de changer le nom de votre application. Ainsi, avant, en haut gauche de votre
application il y avait crit TP1 , et il y aura dsormais crit Bonjour .


Youssef Missaoui High-Tech

Pour supprimer un attribut un simple clic puis cliquez sur le bouton Remove, nous allons
en crer de nouveaux. Pour cela, cliquez sur Add choisissez String puis cliquez sur OK.
Ensuite, inscrivez dans le champ Name : prenom et dans le champ Value : Entrez votre
prnom : . Rptez lopration dajout avec les couples Name/Value suivant :
prenomHint/Tapez votre prnom et bouton/Envoyer .
Crons maintenant de nouveaux fichiers XML pour mettre un peu de couleurs et de
grandeurs par la suite. Faites un clic droit sur le dossier values ( gauche cf. image ci-dessus)
cliquez sur New >>> Android XML File puis remplissez le champ File par dimensions.xml puis
cochez Values et cliquez sur Finish. Crez ensuite un nouvel attribut de type Dimension (de
la mme manire que prcdemment pour le fichier strings.xml) avec le couple Name/Value
suivant : dimMessage/30px . Crez de la mme faon un fichier colors.xml, puis ajoutez
lui un attribut de type Color avec le couple Name/Value suivant :
couleurMessage/#ffa800 .
Cration de linterface graphique

Maintenant ouvrez le fichier activity_tp1.xml (qui se situe dans res >>> layout) et
copiez/collez ceci :

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>

<TextView android:id="@+id/TextViewPrenom"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/prenom"
/>

Youssef Missaoui High-Tech
<LinearLayout
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
<EditText android:id="@+id/EditTextPrenom"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_gravity="bottom"
android:hint="@string/prenomHint"
/>

<Button android:id="@+id/ButtonEnvoyer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/bouton"
/>
</LinearLayout>

<TextView android:id="@+id/TextViewHello"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="center_horizontal"
android:textSize="@dimen/dimMessage"
android:textColor="@color/couleurMessage"
/>

</LinearLayout>


android:id >>> permet de donner un id llment que lon crer, ce qui nous permettra de
le rcuprer dans notre code java plus tard
android:layout_width et android:layout_height>>>permet de dfinir le remplissage de
llment (en largeur et en hauteur)
fill_parent >>> indique que llment prend toute la place disponible (en largeur et/ou en
hauteur)
wrap_content >>> indique que llment prend uniquement la place quil a besoins (en
largeur et/ou en hauteur)
android:layout_gravity >>> permet de prciser la position de llment (center_horizontal,
center_vertical, etc)
android:text >>> permet de configurer le texte qui saffichera, ici dans notre exemple on
utilise les attributs du fichier strings.xml que lon a cr tout lheure
android:textSize >>> permet de configurer la taille du texte, on utilise cette fois lattribut du
fichier dimensions.xml
android:textColor >>> permet de configurer la couleur du texte, on utilise cette fois
lattribut du fichier colors.xml
android:hint >>> permet de configurer le texte qui saffichera lorsque EditText est vide, et
encore une fois on utilise un attribut du fichier strings.xml
android:layout_weight >>> Si on leur affecte la mme valeur au poids
(android:layout_weight), lespace libre sera partag quitablement entre les deux. Si lon
met une valeur 1 au premier et 2 au second, le deuxime prendra deux fois plus despace
libre que le premier (Par dfaut la valeur du poids est de 0).


Youssef Missaoui High-Tech

Cration de lvnement en JAVA

Si tout est ok continuons et commenons programmer en JAVA. Il va falloir mettre un
couteur dvnement sur le bouton Envoyer pour rcuprer le texte que vous aurez
entr pralablement dans lEditText, et afficher Hello votrePrenom de deux manires. Je
vous donne directement le code comment, il ne vous reste plus qu faire un copier/coller
dans le fichier TP1.java.

package com.example.tp1;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;

public class TP1 extends Activity {

Youssef Missaoui High-Tech
private EditText editText;
private Button button;
private String prenom;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tp1);

//rcupration de l'EditText grce son ID
editText = (EditText) findViewById(R.id.EditTextPrenom);

//rcupration du bouton grce son ID
button = (Button) findViewById(R.id.ButtonEnvoyer);

//on applique un couteur d'venement au clique sur le bouton
button.setOnClickListener(
new OnClickListener() {
@Override
public void onClick(View v) {
//on rupre le texte crit dans l'EditText
prenom = editText.getText().toString();

//on affiche "Hello votrePrenom ! " dans une petit pop-
up qui s'affiche quelques seconde en bas d'cran
Toast.makeText(TP1.this, "Hello " + prenom + " !",
Toast.LENGTH_LONG).show();

/*on affiche Hello votrePrenom ! dans un textView
que l'on a cr tout l'heure
* et dont on avait pas prcis la valeur de son texte
il s'agit du dernier TextView dans le fichier activity_tp1.xml
* De toute faon grce l'ID vous devrez facilement
le trouver dans le fichier activity_tp1.xml
*/

((TextView)findViewById(R.id.TextViewHello)).setText("Hello " + prenom + " !");
}
}
);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is
present.
getMenuInflater().inflate(R.menu.tp1, menu);
return true;
}

}

Une fois que vous avez mis en place ce code JAVA, si vous lancez lapplication, que vous
entrez votre prnom et que vous cliquez sur le bouton Envoyer vous devriez voir
apparatre ceci :

Youssef Missaoui High-Tech