Skip to content
This repository was archived by the owner on May 14, 2025. It is now read-only.
This repository was archived by the owner on May 14, 2025. It is now read-only.

Using CalendarPickerView inside AlertDialog 28 api #474

@EgorChe

Description

@EgorChe

Hi! If CalendarPickerView add inside AlertDialog, then In 28 api doesn't work scrollToPosition.

DateRangePickerDialog.java

public class DateRangePickerDialog extends AlertDialog {

   public DateRangePickerDialog(@NonNull Context context) {
       super(context);

       View content = LayoutInflater.from(getContext()).inflate(R.layout.calendar_picker_layout, null);

       CalendarPickerView calendarPickerView = content.findViewById(R.id.calendar_view);

       Calendar nextYear = Calendar.getInstance();
       nextYear.set(2020, 12, 12);

       Calendar lastYear = Calendar.getInstance();
       lastYear.set(2017, 6, 12);

       Date today = new Date();

       calendarPickerView.init(lastYear.getTime(), nextYear.getTime())
               .withSelectedDate(today);

       setView(content);

       setButton(DialogInterface.BUTTON_POSITIVE, "OK", ((dialog, which) -> dialog.dismiss()));

       setButton(DialogInterface.BUTTON_NEGATIVE, "Cancel", (dialog, which) -> dialog.dismiss());

       setOnCancelListener(DialogInterface::dismiss);
   }
} 

calendar_picker_layout.xml

<?xml version="1.0" encoding="utf-8"?>
<com.squareup.timessquare.CalendarPickerView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/calendar_view"
        android:layout_width="300dp"
        android:layout_height="350dp"
        android:layout_gravity="center_horizontal"
        android:background="@android:color/white"
        android:clipToPadding="false"/>

MainActivity.kt

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)

       val alertDialog: AlertDialog = DateRangePickerDialog(this)
        alertDialog.show()
    }
}

activity_main.xml

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions