Este artículo muestra cómo crear un calendarPickerView usando TimeSquare Library. Hemos visto el uso de calendarPickerView para seleccionar una fecha en muchas aplicaciones. Con la ayuda de esta biblioteca, podemos agregar fácilmente un calendario en nuestra aplicación. Acercarse:
- Agregue la biblioteca de soporte en el archivo build.gradle y agregue la dependencia en la sección de dependencias. Esta biblioteca proporciona el widget de calendario incorporado y varias funciones, como seleccionar una fecha en particular, etc.
dependencies {
implementation 'com.squareup:android-times-square:1.6.5@aar'
}
- Ahora agregue el siguiente código en el archivo activity_main.xml . Esto agregará el diseño CalendarPickerView en la aplicación.
actividad_principal.xml
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
androidx.constraintlayout.widget.ConstraintLayout
android:layout_width
=
"match_parent"
android:layout_height
=
"match_parent"
tools:context
=
".MainActivity"
>
<
com.squareup.timessquare.CalendarPickerView
android:id
=
"@+id/calendar"
android:layout_width
=
"match_parent"
android:layout_height
=
"match_parent"
/>
</
androidx.constraintlayout.widget.ConstraintLayout
>
- Ahora agregue el siguiente código en el archivo MainActivity.java . Esto mostrará el calendario del próximo año a partir de la fecha del día actual. Se agrega un setOnDateSelectedListener en el calendario que se invoca cuando el usuario hace clic en cualquier fecha. La función Brinda la fecha del día seleccionado en la pantalla.
MainActivity.java
package
org.geeksforgeeks.gfgcalendarPickerView;
import
androidx.appcompat
.app.AppCompatActivity;
import
android.os.Bundle;
import
android.widget.Toast;
import
com.squareup
.timessquare
.CalendarPickerView;
import
java.text.DateFormat;
import
java.util.Calendar;
import
java.util.Date;
public
class
MainActivity
extends
AppCompatActivity {
@Override
protected
void
onCreate(
Bundle savedInstanceState)
{
super
.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// This will return us today date
Date today =
new
Date();
Calendar nextYear
= Calendar.getInstance();
// This will help us
// to show date from
// today to next year
nextYear.add(Calendar.YEAR,
1
);
CalendarPickerView
datePicker
= findViewById(
R.id.calendar);
// we have to initialize
// our calendar picker view
// so we select min date as today
// max date as next year
// we call getTime() method
// because we want to
// retrieve date from it.
datePicker
.init(today, nextYear.getTime())
.inMode(CalendarPickerView
.SelectionMode
.RANGE)
.withSelectedDate(today);
// when the user select
// or un select any date then
// this method called automatically.
datePicker
.setOnDateSelectedListener(
new
CalendarPickerView
.OnDateSelectedListener() {
@Override
public
void
onDateSelected(Date date)
{
// we have to format our date
// object that's why we are
// using DateFormat class.
String selectedDate
= DateFormat
.getDateInstance(
DateFormat.FULL)
.format(date);
Toast
.makeText(
MainActivity.
this
,
selectedDate,
Toast.LENGTH_SHORT)
.show();
}
@Override
public
void
onDateUnselected(
Date date)
{
}
});
}
}
Producción:
Publicación traducida automáticamente
Artículo escrito por madhavmaheshwarimm20 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA