SeslDatePicker

open class SeslDatePicker : LinearLayout, SeslSimpleMonthView.OnDayClickListener, View.OnClickListener, View.OnLongClickListener, SeslSimpleMonthView.OnDeactivatedDayClickListener(source)

A custom date picker widget for selecting dates, supporting both standard and lunar calendars.

The SeslDatePicker provides a user interface for date selection, allowing users to pick a year, month, and day. It supports various configurations, including minimum and maximum date constraints, and can be customized for different locales and calendar systems.

This widget is designed to be used within Android applications that require date input from users. It integrates with accessibility services and provides support for custom fonts, animations, and Samsung-specific features such as lunar calendar conversion.

Features:

  • Standard and lunar calendar support
  • Customizable appearance and font
  • Minimum and maximum date constraints
  • Accessibility support
  • Locale-aware formatting
  • Samsung-specific enhancements

Usage Example:


SeslDatePicker datePicker = new SeslDatePicker(context);
datePicker.setMinDate(minDateInMillis);
datePicker.setMaxDate(maxDateInMillis);
datePicker.init(year, month, day, new SeslDatePicker.OnDateChangedListener() {
    public void onDateChanged(SeslDatePicker view, int year, int monthOfYear, int dayOfMonth) {
        // Handle date change
    }
});

See also

Constructors

Link copied to clipboard
constructor(@NonNull context: Context)
constructor(@NonNull context: Context, @Nullable attrs: AttributeSet)
constructor(@NonNull context: Context, @Nullable attrs: AttributeSet, defStyleAttr: Int)
constructor(@NonNull context: Context, @Nullable attrs: AttributeSet, defStyleAttr: Int, defStyleRes: Int)

Types

Link copied to clipboard
annotation class DateMode
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Functions

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open fun getDateMode(): Int
Link copied to clipboard
open fun getDayOfMonth(): Int
Link copied to clipboard
open fun getEditText(picker: Int): EditText
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open fun getMaxDate(): Long
Link copied to clipboard
open fun getMinDate(): Long
Link copied to clipboard
open fun getMonth(): Int
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open fun getYear(): Int
Link copied to clipboard
open fun init(year: Int, monthOfYear: Int, dayOfMonth: Int, @Nullable onDateChangedListener: SeslDatePicker.OnDateChangedListener)
Link copied to clipboard
Link copied to clipboard
open fun isEnabled(): Boolean
Link copied to clipboard
open fun isLeapMonth(): Boolean
Link copied to clipboard
open fun isLunar(): Boolean
Link copied to clipboard
open fun onClick(view: View)
Link copied to clipboard
open fun onDayClick(@NonNull view: SeslSimpleMonthView, year: Int, month: Int, day: Int)
Link copied to clipboard
open fun onDeactivatedDayClick(@NonNull view: SeslSimpleMonthView, year: Int, month: Int, selectedDay: Int, isLeapMonth: Boolean, isPrevMonth: Boolean)
Link copied to clipboard
open fun onLongClick(view: View): Boolean
Link copied to clipboard
open fun requestLayout()
Link copied to clipboard
Link copied to clipboard
open fun setCurrentViewType(type: Int)
Link copied to clipboard
open fun setDateMode(mode: Int)
Link copied to clipboard
open fun setDialogPaddingVertical(paddingVertical: Int)
Link copied to clipboard
Link copied to clipboard
open fun setEditTextMode(editTextMode: Boolean)
Link copied to clipboard
open fun setEnabled(enabled: Boolean)
Link copied to clipboard
open fun setFirstDayOfWeek(firstDayOfWeek: Int)
Link copied to clipboard
open fun setLunar(isLunar: Boolean, isLeapMonth: Boolean)
Link copied to clipboard
open fun setLunarEndDate(year: Int, month: Int, day: Int, isLeapEndMonth: Boolean)
Link copied to clipboard
open fun setLunarStartDate(year: Int, month: Int, day: Int, isLeapStartMonth: Boolean)
Link copied to clipboard
open fun setLunarSupported(supported: Boolean, @Nullable switchButton: View)
Link copied to clipboard
open fun setMaxDate(maxDate: Long)
Link copied to clipboard
open fun setMinDate(minDate: Long)
Link copied to clipboard
open fun setSeparateLunarButton(separate: Boolean)
Link copied to clipboard
open fun updateDate(year: Int, month: Int, dayOfMonth: Int)