Le Tutoriel de Android TimePicker
View more Tutorials:
Android TimePicker est un composant qui permet aux utilisateurs de choisir une heure (time), y compris les heures et les minutes.
TimePicker dispose de 2 modes avec une interface différente:
- Clock
- Spinner
Clock Mode
Le mode Clock (Clock mode) est la valeur par défaut de TimePicker, dans lequel les utilisateurs peuvent sélectionner l'heure de manière intuitive comme s'ils ajustaient l'heure d'une horloge (Clock). Vous pouvez également utiliser le clavier pour saisir des valeurs pour les heures et les minutes.
TimePicker (Clock Mode)
<TimePicker android:id="@+id/timePicker" android:layout_width="wrap_content" android:layout_height="wrap_content" android:timePickerMode="clock" />

TimePicker timePicker = (TimePicker) this.findViewById(R.id.timePicker); timePicker.setIs24HourView(true); // 24H Mode.

Spinner Mode
En mode Spinner (Spinner mode), un TimePicker se compose de 2 ou 3 Spinner. Le premier Spinner permet aux utilisateurs de choisir l'heure, le second Spinner permet le choix des minutes et le troisième Spinner de choisir AM ou PM.
TimePicker en mode Spinner et AM_PM comprend 3 Spinner, les utilisateurs choisissent l'heure dans le premier Spinner avec des valeurs de 1 à 12. Sélectionnez les minutes dans le second Spinner avec des valeurs de 0 à 59, puis sélectionnez AM / PM au troisième spinner.
TimePicker (Spinner Mode)
<TimePicker android:id="@+id/timePicker" android:layout_width="wrap_content" android:layout_height="wrap_content" android:timePickerMode="spinner" />

TimePicker en mode Spinner & 24H comprend 2 Spinner, les utilisateurs choisissent l'heure dans le premier Spinner avec des valeurs de 0 à 23 et les minutes dans le second Spinner avec des valeurs de 0 à 59.
TimePicker timePicker = (TimePicker) this.findViewById(R.id.timePicker); timePicker.setIs24HourView(true); // 24H Mode.

Exemple d'aperçu:

Sur Android Studio, créez un nouveau project:
- File > New > New Project > Empty Activity
- Name: TimePickerExample
- Package name: org.o7planning.timepickerexample
- Language: Java
L'interface de l'application:

activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <androidx.constraintlayout.widget.ConstraintLayout 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"> <TimePicker android:id="@+id/timePicker" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="8dp" android:timePickerMode="clock" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toTopOf="parent" /> <TextView android:id="@+id/textView_time" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="16dp" android:text="HH:mm" app:layout_constraintEnd_toEndOf="parent" app:layout_constraintStart_toStartOf="parent" app:layout_constraintTop_toBottomOf="@+id/timePicker" /> </androidx.constraintlayout.widget.ConstraintLayout>
MainActivity.java
package org.o7planning.timepickerexample; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.widget.TextView; import android.widget.TimePicker; public class MainActivity extends AppCompatActivity { private TimePicker timePicker; private TextView textViewTime; // Change this value and run the application again. private boolean is24HView = true; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); this.textViewTime = (TextView) this.findViewById(R.id.textView_time); this.timePicker = (TimePicker) this.findViewById(R.id.timePicker); this.timePicker.setIs24HourView(this.is24HView); this.timePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() { @Override public void onTimeChanged(TimePicker view, int hourOfDay, int minute) { textViewTime.setText(hourOfDay + ":" + minute); } }); } }