DatePickerDialog consente di selezionare una data, composta da giorno, mese e anno.
In questo esempio utilizzeremo un pulsante per visualizzare DatePicker e scegliere una data:
activity_main.xlm
<?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:gravity=”center”
android:orientation=”vertical”>
<TextView
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:text=”Date Picker Dialog”/>
<DatePicker
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:id=”@+id/datePicker”/>
<Button
android:layout_width=”wrap_content”
android:layout_height=”wrap_content”
android:text=”Click to choose a date”
android:id=”@+id/btn”/>
</LinearLayout>
MainActivity.java
package com.datePickerDialog.activities;
import android.os.Bundle;
import androidx.appcompat.app.AppCompatActivity;
import com.datePickerDialog.R;
import android.widget.*;
import java.util.*;
import android.view.*;
import android.app.*;
public class MainActivity extends AppCompatActivity {
DatePicker datepicker;
Button btn;
int year,month,day;
static final int Dialog_Id=0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
datepicker=findViewById(R.id.datePicker);
Calendar calendar=Calendar.getInstance();
year=calendar.get(Calendar.YEAR);
month=calendar.get(Calendar.MONTH);
day=calendar.get(Calendar.DAY_OF_MONTH);
btn=findViewById(R.id.btn);
btn.setOnClickListener(new View.OnClickListener(){
public void onClick(View v){
showDialog(Dialog_Id);
}
});
}
@Override
protected Dialog onCreateDialog(int id)
{
switch(id){
case Dialog_Id:
return new DatePickerDialog(
this,mDateSetListener,year,month,day);
}
return null;
}
private DatePickerDialog.OnDateSetListener mDateSetListener=
new DatePickerDialog.OnDateSetListener(){
public void onDateSet(DatePicker view,
int mYear,int mMonth,int mDay){
Toast.makeText(getBaseContext(),
“You have selected:”+(mMonth+1)
+”-“+mDay
+”-“+mYear,
Toast.LENGTH_LONG).show();
}
};
}