Vous êtes sur la page 1sur 2

Développement des Applications Mobiles Imen AMMARI

TD N°2
Exercice n°1
Nous voudrons développer une application Mobile Java Android qui permet à un utilisateur d'ajouter, lister toutes ses
tâches quotidiennes et de consulter une tâche. Chaque tâche est caractérisée par sa Description, sa Date. Les tâches de
l'utilisateur sont affichées dans un RecyclerView de l'activité « MainActivity ».

La classe Tâche.java est déjà défini :


• 02 attributs description (String), date(string)
• un constructeur permettant d’initialiser la description et la date par des valeurs passées en paramètres
• Les méthodes suivantes getDescription (renvoie la description), getDate(renvoie la date) et la méthode toString qui
renvoie la description et la date de la tâche.

1- Compléter le code XML du fichier « activity_main.xml » permettant d’ajouter un RecyclerView.


<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<…………………………
/>
</ RelativeLayout>

2- Compléter le code XML du fichier « recyclerviewitem.xml ». La description et la date de la tâche seront affichées
dans 02 TextView (txDescription et txtDate).

<?xml version="1.0" encoding="utf-8"?>


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content">
< ………………………
/>
< ………………………
/>
</ RelativeLayout >

3- Compléter le code java des méthodes de la classe «TâcheAdapter» permettant de gérer le mapping entre les données
et le layout des items.

public class TâcheAdapter extends


RecyclerView.Adapter<TâcheAdapter.TâcheViewHolder> {
private Context context;
private List<Tâche> listeTâches;
public TâcheAdapter(Context context, List<Tâche> listeTâches) {
this.context = context;
this.listeTâches = listeTâches;
}
//Q3- Code java à compléter
@Override
public static class TâcheViewHolder extends RecyclerView.ViewHolder {
TextView tvdescription;

L2-SEM AU 2021-2022 Page 1


Développement des Applications Mobiles Imen AMMARI

TextView tvDate;
public TâcheViewHolder(View itemView) {
super(itemView);
tvdescription = itemView.findViewById(R.id.txDescription);
tvDate = itemView.findViewById(R.id.txtDate);}}}
NB :

4- Compléter les codes java de la classe « MainActivity.java » réduite à la méthode « onCreate » permettant d’afficher
les 02 tâches, citées ci-dessous, dans un RecyclerView.
• (Démarrage du projet SmartCity, 19/05/2022)
• (Réunion de travail, 23/05/2022)
public class MainActivity extends AppCompatActivity {
//Q4.1-Code java à compléter
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Q4.2-Code java à compléter
}}

5- Compléter le code java de la méthode onClick sur une tâche du RecyclerView permettant d'afficher la description et la
date de la tâche dans l’activité « SuiviTâcheActivity ».
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//Q5- Code Java à compléter
}});
Exercice n°2
Un utilisateur se connecte à une application mobile en saisissant son email et son mot de passe puis il clique sur le bouton
« Se connecter ». Si les deux champs e-mail et mot de passe sont corrects au cours de la première connexion, ils seront
sauvegardés dans un fichier de préférence et l’utilisateur sera redirigé vers une nouvelle activité intitulée
« ConnectedActivity.java ». Si les deux paramètres de connexion sont incorrects, un message d’erreur sera affiché à
l’utilisateur. Les prochains accès à l’application l’activité « ConnectedActivity.java » sera affichée.
Compléter les codes Java nécessaires de l’activité « AuthentificationActivity.java » ci-dessous :

public class AuthentificationActivity extends AppCompatActivity {


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_authentification);
btnSeConnecter.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}});
}}

L2-SEM AU 2021-2022 Page 2

Vous aimerez peut-être aussi