Cómo crear un CalendarPickerView usando la biblioteca de TimeSquare

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:

  1. 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'
    }
  2. 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
      
        xmlns:tools="http://schemas.android.com/tools"
        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>
  3. 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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *