public class CalendarView
extends android.widget.FrameLayout
| 限定符和类型 | 类和说明 |
|---|---|
static interface |
CalendarView.OnCalendarInterceptListener
拦截日期是否可用事件
|
static interface |
CalendarView.OnCalendarLongClickListener |
static interface |
CalendarView.OnCalendarMultiSelectListener
日历多选事件
|
static interface |
CalendarView.OnCalendarRangeSelectListener
日历范围选择事件
|
static interface |
CalendarView.OnCalendarSelectListener
日历选择事件
|
static interface |
CalendarView.OnClickCalendarPaddingListener
点击Padding位置事件
|
static interface |
CalendarView.OnMonthChangeListener
月份切换事件
|
static interface |
CalendarView.OnViewChangeListener
视图改变事件
|
static interface |
CalendarView.OnWeekChangeListener
周视图切换事件
|
static interface |
CalendarView.OnYearChangeListener
年份视图切换事件,快速年份切换
|
static interface |
CalendarView.OnYearViewChangeListener
年视图改变事件
|
android.view.ViewGroup.MarginLayoutParams, android.view.ViewGroup.OnHierarchyChangeListenerandroid.view.View.AccessibilityDelegate, android.view.View.BaseSavedState, android.view.View.DragShadowBuilder, android.view.View.MeasureSpec, android.view.View.OnApplyWindowInsetsListener, android.view.View.OnAttachStateChangeListener, android.view.View.OnCapturedPointerListener, android.view.View.OnClickListener, android.view.View.OnContextClickListener, android.view.View.OnCreateContextMenuListener, android.view.View.OnDragListener, android.view.View.OnFocusChangeListener, android.view.View.OnGenericMotionListener, android.view.View.OnHoverListener, android.view.View.OnKeyListener, android.view.View.OnLayoutChangeListener, android.view.View.OnLongClickListener, android.view.View.OnScrollChangeListener, android.view.View.OnSystemUiVisibilityChangeListener, android.view.View.OnTouchListener, android.view.View.OnUnhandledKeyEventListenerCLIP_TO_PADDING_MASK, FOCUS_AFTER_DESCENDANTS, FOCUS_BEFORE_DESCENDANTS, FOCUS_BLOCK_DESCENDANTS, LAYOUT_MODE_CLIP_BOUNDS, LAYOUT_MODE_OPTICAL_BOUNDS, PERSISTENT_ALL_CACHES, PERSISTENT_ANIMATION_CACHE, PERSISTENT_NO_CACHE, PERSISTENT_SCROLLING_CACHEACCESSIBILITY_LIVE_REGION_ASSERTIVE, ACCESSIBILITY_LIVE_REGION_NONE, ACCESSIBILITY_LIVE_REGION_POLITE, ALPHA, AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR, AUTOFILL_HINT_CREDIT_CARD_NUMBER, AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE, AUTOFILL_HINT_EMAIL_ADDRESS, AUTOFILL_HINT_NAME, AUTOFILL_HINT_PASSWORD, AUTOFILL_HINT_PHONE, AUTOFILL_HINT_POSTAL_ADDRESS, AUTOFILL_HINT_POSTAL_CODE, AUTOFILL_HINT_USERNAME, AUTOFILL_TYPE_DATE, AUTOFILL_TYPE_LIST, AUTOFILL_TYPE_NONE, AUTOFILL_TYPE_TEXT, AUTOFILL_TYPE_TOGGLE, DRAG_FLAG_GLOBAL, DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION, DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION, DRAG_FLAG_GLOBAL_URI_READ, DRAG_FLAG_GLOBAL_URI_WRITE, DRAG_FLAG_OPAQUE, DRAWING_CACHE_QUALITY_AUTO, DRAWING_CACHE_QUALITY_HIGH, DRAWING_CACHE_QUALITY_LOW, EMPTY_STATE_SET, ENABLED_FOCUSED_SELECTED_STATE_SET, ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, ENABLED_FOCUSED_STATE_SET, ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET, ENABLED_SELECTED_STATE_SET, ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET, ENABLED_STATE_SET, ENABLED_WINDOW_FOCUSED_STATE_SET, FIND_VIEWS_WITH_CONTENT_DESCRIPTION, FIND_VIEWS_WITH_TEXT, FOCUS_BACKWARD, FOCUS_DOWN, FOCUS_FORWARD, FOCUS_LEFT, FOCUS_RIGHT, FOCUS_UP, FOCUSABLE, FOCUSABLE_AUTO, FOCUSABLES_ALL, FOCUSABLES_TOUCH_MODE, FOCUSED_SELECTED_STATE_SET, FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, FOCUSED_STATE_SET, FOCUSED_WINDOW_FOCUSED_STATE_SET, GONE, HAPTIC_FEEDBACK_ENABLED, IMPORTANT_FOR_ACCESSIBILITY_AUTO, IMPORTANT_FOR_ACCESSIBILITY_NO, IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS, IMPORTANT_FOR_ACCESSIBILITY_YES, IMPORTANT_FOR_AUTOFILL_AUTO, IMPORTANT_FOR_AUTOFILL_NO, IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS, IMPORTANT_FOR_AUTOFILL_YES, IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS, INVISIBLE, KEEP_SCREEN_ON, LAYER_TYPE_HARDWARE, LAYER_TYPE_NONE, LAYER_TYPE_SOFTWARE, LAYOUT_DIRECTION_INHERIT, LAYOUT_DIRECTION_LOCALE, LAYOUT_DIRECTION_LTR, LAYOUT_DIRECTION_RTL, MEASURED_HEIGHT_STATE_SHIFT, MEASURED_SIZE_MASK, MEASURED_STATE_MASK, MEASURED_STATE_TOO_SMALL, NO_ID, NOT_FOCUSABLE, OVER_SCROLL_ALWAYS, OVER_SCROLL_IF_CONTENT_SCROLLS, OVER_SCROLL_NEVER, PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET, PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_FOCUSED_STATE_SET, PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_SELECTED_STATE_SET, PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_STATE_SET, PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET, PRESSED_FOCUSED_SELECTED_STATE_SET, PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_FOCUSED_STATE_SET, PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET, PRESSED_SELECTED_STATE_SET, PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_STATE_SET, PRESSED_WINDOW_FOCUSED_STATE_SET, ROTATION, ROTATION_X, ROTATION_Y, SCALE_X, SCALE_Y, SCREEN_STATE_OFF, SCREEN_STATE_ON, SCROLL_AXIS_HORIZONTAL, SCROLL_AXIS_NONE, SCROLL_AXIS_VERTICAL, SCROLL_INDICATOR_BOTTOM, SCROLL_INDICATOR_END, SCROLL_INDICATOR_LEFT, SCROLL_INDICATOR_RIGHT, SCROLL_INDICATOR_START, SCROLL_INDICATOR_TOP, SCROLLBAR_POSITION_DEFAULT, SCROLLBAR_POSITION_LEFT, SCROLLBAR_POSITION_RIGHT, SCROLLBARS_INSIDE_INSET, SCROLLBARS_INSIDE_OVERLAY, SCROLLBARS_OUTSIDE_INSET, SCROLLBARS_OUTSIDE_OVERLAY, SELECTED_STATE_SET, SELECTED_WINDOW_FOCUSED_STATE_SET, SOUND_EFFECTS_ENABLED, STATUS_BAR_HIDDEN, STATUS_BAR_VISIBLE, SYSTEM_UI_FLAG_FULLSCREEN, SYSTEM_UI_FLAG_HIDE_NAVIGATION, SYSTEM_UI_FLAG_IMMERSIVE, SYSTEM_UI_FLAG_IMMERSIVE_STICKY, SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN, SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION, SYSTEM_UI_FLAG_LAYOUT_STABLE, SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR, SYSTEM_UI_FLAG_LIGHT_STATUS_BAR, SYSTEM_UI_FLAG_LOW_PROFILE, SYSTEM_UI_FLAG_VISIBLE, SYSTEM_UI_LAYOUT_FLAGS, TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_GRAVITY, TEXT_ALIGNMENT_INHERIT, TEXT_ALIGNMENT_TEXT_END, TEXT_ALIGNMENT_TEXT_START, TEXT_ALIGNMENT_VIEW_END, TEXT_ALIGNMENT_VIEW_START, TEXT_DIRECTION_ANY_RTL, TEXT_DIRECTION_FIRST_STRONG, TEXT_DIRECTION_FIRST_STRONG_LTR, TEXT_DIRECTION_FIRST_STRONG_RTL, TEXT_DIRECTION_INHERIT, TEXT_DIRECTION_LOCALE, TEXT_DIRECTION_LTR, TEXT_DIRECTION_RTL, TRANSLATION_X, TRANSLATION_Y, TRANSLATION_Z, VIEW_LOG_TAG, VISIBLE, WINDOW_FOCUSED_STATE_SET, X, Y, Z| 构造器和说明 |
|---|
CalendarView(android.content.Context context) |
CalendarView(android.content.Context context,
android.util.AttributeSet attrs) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
addSchemeDate(Calendar calendar)
添加事物标记
|
void |
addSchemeDate(java.util.Map<java.lang.String,Calendar> mSchemeDates)
添加事物标记
|
void |
clearMultiSelect()
清除多选
|
void |
clearSchemeDate()
清空日期标记
|
void |
clearSelectRange()
清除选择范围
|
void |
clearSingleSelect()
清除单选
|
void |
closeYearSelectLayout()
关闭年月视图选择布局
|
int |
getCurDay()
获取当天
|
int |
getCurMonth()
获取本月
|
java.util.List<Calendar> |
getCurrentMonthCalendars()
获取当前月份日期
|
java.util.List<Calendar> |
getCurrentWeekCalendars()
获取当前周数据
|
int |
getCurYear()
获取本年
|
int |
getMaxMultiSelectSize()
获得最大多选数量
|
Calendar |
getMaxRangeCalendar()
获得最大范围日期
|
int |
getMaxSelectRange()
最大选择范围
|
Calendar |
getMinRangeCalendar()
获得最小范围日期
|
int |
getMinSelectRange()
最小选择范围
|
MonthViewPager |
getMonthViewPager()
MonthViewPager
|
java.util.List<Calendar> |
getMultiSelectCalendars() |
java.util.List<Calendar> |
getSelectCalendarRange()
获取选中范围
|
Calendar |
getSelectedCalendar()
获取选择的日期
|
WeekViewPager |
getWeekViewPager()
获得周视图
|
protected boolean |
isInRange(Calendar calendar)
是否在日期范围内
|
boolean |
isSingleSelectMode()
是否是单选模式
|
boolean |
isYearSelectLayoutVisible()
年月份选择视图是否打开
|
protected void |
onAttachedToWindow()
初始化时初始化日历卡默认选择位置
|
protected boolean |
onCalendarIntercept(Calendar calendar)
是否拦截日期,此设置续设置mCalendarInterceptListener
|
protected void |
onMeasure(int widthMeasureSpec,
int heightMeasureSpec) |
protected void |
onRestoreInstanceState(android.os.Parcelable state)
恢复状态
|
protected android.os.Parcelable |
onSaveInstanceState()
保持状态
|
void |
putMultiSelect(Calendar... calendars)
添加选择
|
void |
removeMultiSelect(Calendar... calendars)
清楚一些多选日期
|
void |
removeSchemeDate(Calendar calendar)
移除某天的标记
这个API是安全的
|
void |
scrollToCalendar(int year,
int month,
int day)
滚动到指定日期
|
void |
scrollToCalendar(int year,
int month,
int day,
boolean smoothScroll)
滚动到指定日期
|
void |
scrollToCalendar(int year,
int month,
int day,
boolean smoothScroll,
boolean invokeListener)
滚动到指定日期
|
void |
scrollToCurrent()
滚动到当前
|
void |
scrollToCurrent(boolean smoothScroll)
滚动到当前
|
void |
scrollToNext()
滚动到下一个月
|
void |
scrollToNext(boolean smoothScroll)
滚动到下一个月
|
void |
scrollToPre()
滚动到上一个月
|
void |
scrollToPre(boolean smoothScroll)
滚动到上一个月
|
void |
scrollToSelectCalendar()
滚动到选择的日历
|
void |
scrollToYear(int year)
滚动到某一年
|
void |
scrollToYear(int year,
boolean smoothScroll)
滚动到某一年
|
void |
setAllMode()
设置显示模式为全部
|
void |
setBackground(int yearViewBackground,
int weekBackground,
int lineBg)
设置背景色
|
void |
setCalendarItemHeight(int calendarItemHeight)
设置月视图项高度
|
void |
setCalendarPadding(int mCalendarPadding) |
void |
setCalendarPaddingLeft(int mCalendarPaddingLeft) |
void |
setCalendarPaddingRight(int mCalendarPaddingRight) |
void |
setDefaultMonthViewSelectDay() |
void |
setFixMode()
设置显示模式为填充
|
void |
setLastMonthViewSelectDay() |
void |
setLastMonthViewSelectDayIgnoreCurrent() |
void |
setMaxMultiSelectSize(int maxMultiSelectSize)
设置最大多选数量
|
void |
setMonthView(java.lang.Class<?> cls)
设置月视图
|
void |
setMonthViewScrollable(boolean monthViewScrollable)
设置月视图是否可滚动
|
void |
setOnCalendarInterceptListener(CalendarView.OnCalendarInterceptListener listener)
添加日期拦截事件
使用此方法,只能基于select_mode = single_mode
否则的话,如果标记全部日期为不可点击,那是没有意义的,
框架本身也不可能在滑动的过程中全部去判断每个日期的可点击性
|
void |
setOnCalendarLongClickListener(CalendarView.OnCalendarLongClickListener listener)
日期长按事件
|
void |
setOnCalendarLongClickListener(CalendarView.OnCalendarLongClickListener listener,
boolean preventLongPressedSelect)
日期长按事件
|
void |
setOnCalendarMultiSelectListener(CalendarView.OnCalendarMultiSelectListener listener)
日期多选事件
|
void |
setOnCalendarRangeSelectListener(CalendarView.OnCalendarRangeSelectListener listener)
日期选择事件
|
void |
setOnCalendarSelectListener(CalendarView.OnCalendarSelectListener listener)
日期选择事件
|
void |
setOnClickCalendarPaddingListener(CalendarView.OnClickCalendarPaddingListener listener)
点击视图Padding位置的事件
|
void |
setOnlyCurrentMode()
设置显示模式为仅当前月份
|
void |
setOnMonthChangeListener(CalendarView.OnMonthChangeListener listener)
月份改变事件
|
void |
setOnViewChangeListener(CalendarView.OnViewChangeListener listener)
视图改变事件
|
void |
setOnWeekChangeListener(CalendarView.OnWeekChangeListener listener)
周视图切换监听
|
void |
setOnYearChangeListener(CalendarView.OnYearChangeListener listener)
年份改变事件
|
void |
setOnYearViewChangeListener(CalendarView.OnYearViewChangeListener listener) |
void |
setRange(int minYear,
int minYearMonth,
int minYearDay,
int maxYear,
int maxYearMonth,
int maxYearDay)
设置日期范围
|
void |
setSchemeColor(int schemeColor,
int schemeTextColor,
int schemeLunarTextColor)
设置标记的色
|
void |
setSchemeDate(java.util.Map<java.lang.String,Calendar> mSchemeDates)
标记哪些日期有事件
|
void |
setSelectCalendarRange(Calendar startCalendar,
Calendar endCalendar)
设置选择日期范围
|
void |
setSelectCalendarRange(int startYear,
int startMonth,
int startDay,
int endYear,
int endMonth,
int endDay)
直接指定选择范围,set select calendar range
|
void |
setSelectDefaultMode()
默认选择模式
|
void |
setSelectedColor(int selectedThemeColor,
int selectedTextColor,
int selectedLunarTextColor)
设置选择的效果
|
void |
setSelectEndCalendar(Calendar endCalendar) |
void |
setSelectEndCalendar(int endYear,
int endMonth,
int endDay) |
void |
setSelectMultiMode()
多选模式
|
void |
setSelectRange(int minRange,
int maxRange)
设置最小范围和最大访问,default:minRange = -1,maxRange = -1 没有限制
|
void |
setSelectRangeMode()
范围模式
|
void |
setSelectSingleMode()
单选模式
|
void |
setSelectStartCalendar(Calendar startCalendar) |
void |
setSelectStartCalendar(int startYear,
int startMonth,
int startDay) |
void |
setTextColor(int currentDayTextColor,
int curMonthTextColor,
int otherMonthColor,
int curMonthLunarTextColor,
int otherMonthLunarTextColor)
设置文本颜色
|
void |
setThemeColor(int selectedThemeColor,
int schemeColor)
定制颜色
|
void |
setWeeColor(int weekBackground,
int weekTextColor)
设置星期栏的背景和字体颜色
|
void |
setWeekBar(java.lang.Class<?> cls)
设置周栏视图
|
void |
setWeekStarWithMon()
设置星期一周起始
|
void |
setWeekStarWithSat()
设置星期六周起始
|
void |
setWeekStarWithSun()
设置星期日周起始
|
void |
setWeekView(java.lang.Class<?> cls)
设置周视图
|
void |
setWeekViewScrollable(boolean weekViewScrollable)
设置周视图是否可滚动
|
void |
setYearViewScrollable(boolean yearViewScrollable)
设置年视图是否可滚动
|
void |
setYearViewTextColor(int yearViewMonthTextColor,
int yearViewDayTextColor,
int yarViewSchemeTextColor)
设置年视图的颜色
|
void |
showYearSelectLayout(int year)
打开日历年月份快速选择
|
void |
update()
更新界面,
重新设置颜色等都需要调用该方法
|
void |
updateCurrentDate()
更新当前日期
|
void |
updateWeekBar()
更新周视图
|
checkLayoutParams, generateDefaultLayoutParams, generateLayoutParams, generateLayoutParams, getAccessibilityClassName, getConsiderGoneChildrenWhenMeasuring, getMeasureAllChildren, onLayout, setForegroundGravity, setMeasureAllChildren, shouldDelayChildPressedStateaddChildrenForAccessibility, addFocusables, addKeyboardNavigationClusters, addStatesFromChildren, addTouchables, addView, addView, addView, addView, addView, addViewInLayout, addViewInLayout, attachLayoutAnimationParameters, attachViewToParent, bringChildToFront, canAnimate, childDrawableStateChanged, childHasTransientStateChanged, cleanupLayoutState, clearChildFocus, clearDisappearingChildren, clearFocus, debug, detachAllViewsFromParent, detachViewFromParent, detachViewFromParent, detachViewsFromParent, dispatchApplyWindowInsets, dispatchCapturedPointerEvent, dispatchConfigurationChanged, dispatchDisplayHint, dispatchDragEvent, dispatchDraw, dispatchDrawableHotspotChanged, dispatchFinishTemporaryDetach, dispatchFreezeSelfOnly, dispatchGenericFocusedEvent, dispatchGenericPointerEvent, dispatchHoverEvent, dispatchKeyEvent, dispatchKeyEventPreIme, dispatchKeyShortcutEvent, dispatchPointerCaptureChanged, dispatchProvideAutofillStructure, dispatchProvideStructure, dispatchRestoreInstanceState, dispatchSaveInstanceState, dispatchSetActivated, dispatchSetPressed, dispatchSetSelected, dispatchStartTemporaryDetach, dispatchSystemUiVisibilityChanged, dispatchThawSelfOnly, dispatchTouchEvent, dispatchTrackballEvent, dispatchUnhandledMove, dispatchVisibilityChanged, dispatchWindowFocusChanged, dispatchWindowSystemUiVisiblityChanged, dispatchWindowVisibilityChanged, drawableStateChanged, drawChild, endViewTransition, findFocus, findViewsWithText, focusableViewAvailable, focusSearch, gatherTransparentRegion, getChildAt, getChildCount, getChildDrawingOrder, getChildMeasureSpec, getChildStaticTransformation, getChildVisibleRect, getClipChildren, getClipToPadding, getDescendantFocusability, getFocusedChild, getLayoutAnimation, getLayoutAnimationListener, getLayoutMode, getLayoutTransition, getNestedScrollAxes, getOverlay, getPersistentDrawingCache, getTouchscreenBlocksFocus, hasFocus, hasTransientState, indexOfChild, invalidateChild, invalidateChildInParent, isAlwaysDrawnWithCacheEnabled, isAnimationCacheEnabled, isChildrenDrawingOrderEnabled, isChildrenDrawnWithCacheEnabled, isMotionEventSplittingEnabled, isTransitionGroup, jumpDrawablesToCurrentState, layout, measureChild, measureChildren, measureChildWithMargins, notifySubtreeAccessibilityStateChanged, offsetDescendantRectToMyCoords, offsetRectIntoDescendantCoords, onCreateDrawableState, onDescendantInvalidated, onDetachedFromWindow, onInterceptHoverEvent, onInterceptTouchEvent, onNestedFling, onNestedPreFling, onNestedPrePerformAccessibilityAction, onNestedPreScroll, onNestedScroll, onNestedScrollAccepted, onRequestFocusInDescendants, onRequestSendAccessibilityEvent, onResolvePointerIcon, onStartNestedScroll, onStopNestedScroll, onViewAdded, onViewRemoved, recomputeViewAttributes, removeAllViews, removeAllViewsInLayout, removeDetachedView, removeView, removeViewAt, removeViewInLayout, removeViews, removeViewsInLayout, requestChildFocus, requestChildRectangleOnScreen, requestDisallowInterceptTouchEvent, requestFocus, requestSendAccessibilityEvent, requestTransparentRegion, restoreDefaultFocus, scheduleLayoutAnimation, setAddStatesFromChildren, setAlwaysDrawnWithCacheEnabled, setAnimationCacheEnabled, setChildrenDrawingCacheEnabled, setChildrenDrawingOrderEnabled, setChildrenDrawnWithCacheEnabled, setClipChildren, setClipToPadding, setDescendantFocusability, setLayoutAnimation, setLayoutAnimationListener, setLayoutMode, setLayoutTransition, setMotionEventSplittingEnabled, setOnHierarchyChangeListener, setPersistentDrawingCache, setStaticTransformationsEnabled, setTouchscreenBlocksFocus, setTransitionGroup, showContextMenuForChild, showContextMenuForChild, startActionModeForChild, startActionModeForChild, startLayoutAnimation, startViewTransition, updateViewLayoutaddExtraDataToAccessibilityNodeInfo, addFocusables, addOnAttachStateChangeListener, addOnLayoutChangeListener, addOnUnhandledKeyEventListener, animate, announceForAccessibility, autofill, autofill, awakenScrollBars, awakenScrollBars, awakenScrollBars, bringToFront, buildDrawingCache, buildDrawingCache, buildLayer, callOnClick, cancelDragAndDrop, cancelLongPress, cancelPendingInputEvents, canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, canScrollHorizontally, canScrollVertically, checkInputConnectionProxy, clearAnimation, combineMeasuredStates, computeHorizontalScrollExtent, computeHorizontalScrollOffset, computeHorizontalScrollRange, computeScroll, computeSystemWindowInsets, computeVerticalScrollExtent, computeVerticalScrollOffset, computeVerticalScrollRange, createAccessibilityNodeInfo, createContextMenu, destroyDrawingCache, dispatchGenericMotionEvent, dispatchNestedFling, dispatchNestedPreFling, dispatchNestedPrePerformAccessibilityAction, dispatchNestedPreScroll, dispatchNestedScroll, dispatchPopulateAccessibilityEvent, draw, drawableHotspotChanged, findViewById, findViewWithTag, fitSystemWindows, focusSearch, forceHasOverlappingRendering, forceLayout, generateViewId, getAccessibilityLiveRegion, getAccessibilityNodeProvider, getAccessibilityPaneTitle, getAccessibilityTraversalAfter, getAccessibilityTraversalBefore, getAlpha, getAnimation, getApplicationWindowToken, getAutofillHints, getAutofillId, getAutofillType, getAutofillValue, getBackground, getBackgroundTintList, getBackgroundTintMode, getBaseline, getBottom, getBottomFadingEdgeStrength, getBottomPaddingOffset, getCameraDistance, getClipBounds, getClipBounds, getClipToOutline, getContentDescription, getContext, getContextMenuInfo, getDefaultFocusHighlightEnabled, getDefaultSize, getDisplay, getDrawableState, getDrawingCache, getDrawingCache, getDrawingCacheBackgroundColor, getDrawingCacheQuality, getDrawingRect, getDrawingTime, getElevation, getFilterTouchesWhenObscured, getFitsSystemWindows, getFocusable, getFocusables, getFocusedRect, getForeground, getForegroundGravity, getForegroundTintList, getForegroundTintMode, getGlobalVisibleRect, getGlobalVisibleRect, getHandler, getHasOverlappingRendering, getHeight, getHitRect, getHorizontalFadingEdgeLength, getHorizontalScrollbarHeight, getId, getImportantForAccessibility, getImportantForAutofill, getKeepScreenOn, getKeyDispatcherState, getLabelFor, getLayerType, getLayoutDirection, getLayoutParams, getLeft, getLeftFadingEdgeStrength, getLeftPaddingOffset, getLocalVisibleRect, getLocationInWindow, getLocationOnScreen, getMatrix, getMeasuredHeight, getMeasuredHeightAndState, getMeasuredState, getMeasuredWidth, getMeasuredWidthAndState, getMinimumHeight, getMinimumWidth, getNextClusterForwardId, getNextFocusDownId, getNextFocusForwardId, getNextFocusLeftId, getNextFocusRightId, getNextFocusUpId, getOnFocusChangeListener, getOutlineAmbientShadowColor, getOutlineProvider, getOutlineSpotShadowColor, getOverScrollMode, getPaddingBottom, getPaddingEnd, getPaddingLeft, getPaddingRight, getPaddingStart, getPaddingTop, getParent, getParentForAccessibility, getPivotX, getPivotY, getPointerIcon, getResources, getRevealOnFocusHint, getRight, getRightFadingEdgeStrength, getRightPaddingOffset, getRootView, getRootWindowInsets, getRotation, getRotationX, getRotationY, getScaleX, getScaleY, getScrollBarDefaultDelayBeforeFade, getScrollBarFadeDuration, getScrollBarSize, getScrollBarStyle, getScrollIndicators, getScrollX, getScrollY, getSolidColor, getStateListAnimator, getSuggestedMinimumHeight, getSuggestedMinimumWidth, getSystemUiVisibility, getTag, getTag, getTextAlignment, getTextDirection, getTooltipText, getTop, getTopFadingEdgeStrength, getTopPaddingOffset, getTouchables, getTouchDelegate, getTransitionName, getTranslationX, getTranslationY, getTranslationZ, getVerticalFadingEdgeLength, getVerticalScrollbarPosition, getVerticalScrollbarWidth, getViewTreeObserver, getVisibility, getWidth, getWindowAttachCount, getWindowId, getWindowSystemUiVisibility, getWindowToken, getWindowVisibility, getWindowVisibleDisplayFrame, getX, getY, getZ, hasExplicitFocusable, hasFocusable, hasNestedScrollingParent, hasOnClickListeners, hasOverlappingRendering, hasPointerCapture, hasWindowFocus, inflate, invalidate, invalidate, invalidate, invalidateDrawable, invalidateOutline, isAccessibilityFocused, isAccessibilityHeading, isActivated, isAttachedToWindow, isClickable, isContextClickable, isDirty, isDrawingCacheEnabled, isDuplicateParentStateEnabled, isEnabled, isFocusable, isFocusableInTouchMode, isFocused, isFocusedByDefault, isHapticFeedbackEnabled, isHardwareAccelerated, isHorizontalFadingEdgeEnabled, isHorizontalScrollBarEnabled, isHovered, isImportantForAccessibility, isImportantForAutofill, isInEditMode, isInLayout, isInTouchMode, isKeyboardNavigationCluster, isLaidOut, isLayoutDirectionResolved, isLayoutRequested, isLongClickable, isNestedScrollingEnabled, isOpaque, isPaddingOffsetRequired, isPaddingRelative, isPivotSet, isPressed, isSaveEnabled, isSaveFromParentEnabled, isScreenReaderFocusable, isScrollbarFadingEnabled, isScrollContainer, isSelected, isShown, isSoundEffectsEnabled, isTemporarilyDetached, isTextAlignmentResolved, isTextDirectionResolved, isVerticalFadingEdgeEnabled, isVerticalScrollBarEnabled, isVisibleToUserForAutofill, keyboardNavigationClusterSearch, measure, mergeDrawableStates, offsetLeftAndRight, offsetTopAndBottom, onAnimationEnd, onAnimationStart, onApplyWindowInsets, onCancelPendingInputEvents, onCapturedPointerEvent, onCheckIsTextEditor, onConfigurationChanged, onCreateContextMenu, onCreateInputConnection, onDisplayHint, onDragEvent, onDraw, onDrawForeground, onDrawScrollBars, onFilterTouchEventForSecurity, onFinishInflate, onFinishTemporaryDetach, onFocusChanged, onGenericMotionEvent, onHoverChanged, onHoverEvent, onInitializeAccessibilityEvent, onInitializeAccessibilityNodeInfo, onKeyDown, onKeyLongPress, onKeyMultiple, onKeyPreIme, onKeyShortcut, onKeyUp, onOverScrolled, onPointerCaptureChange, onPopulateAccessibilityEvent, onProvideAutofillStructure, onProvideAutofillVirtualStructure, onProvideStructure, onProvideVirtualStructure, onRtlPropertiesChanged, onScreenStateChanged, onScrollChanged, onSetAlpha, onSizeChanged, onStartTemporaryDetach, onTouchEvent, onTrackballEvent, onVisibilityAggregated, onVisibilityChanged, onWindowFocusChanged, onWindowSystemUiVisibilityChanged, onWindowVisibilityChanged, overScrollBy, performAccessibilityAction, performClick, performContextClick, performContextClick, performHapticFeedback, performHapticFeedback, performLongClick, performLongClick, playSoundEffect, post, postDelayed, postInvalidate, postInvalidate, postInvalidateDelayed, postInvalidateDelayed, postInvalidateOnAnimation, postInvalidateOnAnimation, postOnAnimation, postOnAnimationDelayed, refreshDrawableState, releasePointerCapture, removeCallbacks, removeOnAttachStateChangeListener, removeOnLayoutChangeListener, removeOnUnhandledKeyEventListener, requestApplyInsets, requestFitSystemWindows, requestFocus, requestFocus, requestFocusFromTouch, requestLayout, requestPointerCapture, requestRectangleOnScreen, requestRectangleOnScreen, requestUnbufferedDispatch, requireViewById, resetPivot, resolveSize, resolveSizeAndState, restoreHierarchyState, saveHierarchyState, scheduleDrawable, scrollBy, scrollTo, sendAccessibilityEvent, sendAccessibilityEventUnchecked, setAccessibilityDelegate, setAccessibilityHeading, setAccessibilityLiveRegion, setAccessibilityPaneTitle, setAccessibilityTraversalAfter, setAccessibilityTraversalBefore, setActivated, setAlpha, setAnimation, setAutofillHints, setAutofillId, setBackground, setBackgroundColor, setBackgroundDrawable, setBackgroundResource, setBackgroundTintList, setBackgroundTintMode, setBottom, setCameraDistance, setClickable, setClipBounds, setClipToOutline, setContentDescription, setContextClickable, setDefaultFocusHighlightEnabled, setDrawingCacheBackgroundColor, setDrawingCacheEnabled, setDrawingCacheQuality, setDuplicateParentStateEnabled, setElevation, setEnabled, setFadingEdgeLength, setFilterTouchesWhenObscured, setFitsSystemWindows, setFocusable, setFocusable, setFocusableInTouchMode, setFocusedByDefault, setForeground, setForegroundTintList, setForegroundTintMode, setHapticFeedbackEnabled, setHasTransientState, setHorizontalFadingEdgeEnabled, setHorizontalScrollBarEnabled, setHovered, setId, setImportantForAccessibility, setImportantForAutofill, setKeepScreenOn, setKeyboardNavigationCluster, setLabelFor, setLayerPaint, setLayerType, setLayoutDirection, setLayoutParams, setLeft, setLongClickable, setMeasuredDimension, setMinimumHeight, setMinimumWidth, setNestedScrollingEnabled, setNextClusterForwardId, setNextFocusDownId, setNextFocusForwardId, setNextFocusLeftId, setNextFocusRightId, setNextFocusUpId, setOnApplyWindowInsetsListener, setOnCapturedPointerListener, setOnClickListener, setOnContextClickListener, setOnCreateContextMenuListener, setOnDragListener, setOnFocusChangeListener, setOnGenericMotionListener, setOnHoverListener, setOnKeyListener, setOnLongClickListener, setOnScrollChangeListener, setOnSystemUiVisibilityChangeListener, setOnTouchListener, setOutlineAmbientShadowColor, setOutlineProvider, setOutlineSpotShadowColor, setOverScrollMode, setPadding, setPaddingRelative, setPivotX, setPivotY, setPointerIcon, setPressed, setRevealOnFocusHint, setRight, setRotation, setRotationX, setRotationY, setSaveEnabled, setSaveFromParentEnabled, setScaleX, setScaleY, setScreenReaderFocusable, setScrollBarDefaultDelayBeforeFade, setScrollBarFadeDuration, setScrollbarFadingEnabled, setScrollBarSize, setScrollBarStyle, setScrollContainer, setScrollIndicators, setScrollIndicators, setScrollX, setScrollY, setSelected, setSoundEffectsEnabled, setStateListAnimator, setSystemUiVisibility, setTag, setTag, setTextAlignment, setTextDirection, setTooltipText, setTop, setTouchDelegate, setTransitionName, setTranslationX, setTranslationY, setTranslationZ, setVerticalFadingEdgeEnabled, setVerticalScrollBarEnabled, setVerticalScrollbarPosition, setVisibility, setWillNotCacheDrawing, setWillNotDraw, setX, setY, setZ, showContextMenu, showContextMenu, startActionMode, startActionMode, startAnimation, startDrag, startDragAndDrop, startNestedScroll, stopNestedScroll, toString, unscheduleDrawable, unscheduleDrawable, updateDragShadow, verifyDrawable, willNotCacheDrawing, willNotDrawclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitcanResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, createContextMenu, getLayoutDirection, getParent, getParentForAccessibility, getTextAlignment, getTextDirection, isLayoutDirectionResolved, isLayoutRequested, isTextAlignmentResolved, isTextDirectionResolved, keyboardNavigationClusterSearch, requestFitSystemWindows, requestLayoutpublic CalendarView(@NonNull
android.content.Context context)
public CalendarView(@NonNull
android.content.Context context,
@Nullable
android.util.AttributeSet attrs)
public void setRange(int minYear,
int minYearMonth,
int minYearDay,
int maxYear,
int maxYearMonth,
int maxYearDay)
minYear - 最小年份minYearMonth - 最小年份对应月份minYearDay - 最小年份对应天maxYear - 最大月份maxYearMonth - 最大月份对应月份maxYearDay - 最大月份对应天public int getCurDay()
public int getCurMonth()
public int getCurYear()
public void showYearSelectLayout(int year)
year - 年public boolean isYearSelectLayoutVisible()
public void closeYearSelectLayout()
public void scrollToCurrent()
public void scrollToCurrent(boolean smoothScroll)
smoothScroll - smoothScrollpublic void scrollToNext()
public void scrollToNext(boolean smoothScroll)
smoothScroll - smoothScrollpublic void scrollToPre()
public void scrollToPre(boolean smoothScroll)
smoothScroll - smoothScrollpublic void scrollToSelectCalendar()
public void scrollToCalendar(int year,
int month,
int day)
year - yearmonth - monthday - daypublic void scrollToCalendar(int year,
int month,
int day,
boolean smoothScroll)
year - yearmonth - monthday - daysmoothScroll - smoothScrollpublic void scrollToCalendar(int year,
int month,
int day,
boolean smoothScroll,
boolean invokeListener)
year - yearmonth - monthday - daysmoothScroll - smoothScrollinvokeListener - 调用日期事件public void scrollToYear(int year)
year - 快速滚动的年份public void scrollToYear(int year,
boolean smoothScroll)
year - 快速滚动的年份smoothScroll - smoothScrollpublic final void setMonthViewScrollable(boolean monthViewScrollable)
monthViewScrollable - 设置月视图是否可滚动public final void setWeekViewScrollable(boolean weekViewScrollable)
weekViewScrollable - 设置周视图是否可滚动public final void setYearViewScrollable(boolean yearViewScrollable)
yearViewScrollable - 设置年视图是否可滚动public final void setDefaultMonthViewSelectDay()
public final void setLastMonthViewSelectDay()
public final void setLastMonthViewSelectDayIgnoreCurrent()
public final void clearSelectRange()
public final void clearSingleSelect()
public final void clearMultiSelect()
public final void putMultiSelect(Calendar... calendars)
calendars - calendarspublic final void removeMultiSelect(Calendar... calendars)
calendars - calendarspublic final java.util.List<Calendar> getMultiSelectCalendars()
public final java.util.List<Calendar> getSelectCalendarRange()
public final void setCalendarItemHeight(int calendarItemHeight)
calendarItemHeight - MonthView item heightpublic final void setMonthView(java.lang.Class<?> cls)
cls - MonthView.classpublic final void setWeekView(java.lang.Class<?> cls)
cls - WeekView.classpublic final void setWeekBar(java.lang.Class<?> cls)
cls - WeekBar.classpublic final void setOnCalendarInterceptListener(CalendarView.OnCalendarInterceptListener listener)
listener - listenerpublic final void setOnClickCalendarPaddingListener(CalendarView.OnClickCalendarPaddingListener listener)
listener - listenerpublic void setOnYearChangeListener(CalendarView.OnYearChangeListener listener)
listener - listenerpublic void setOnMonthChangeListener(CalendarView.OnMonthChangeListener listener)
listener - listenerpublic void setOnWeekChangeListener(CalendarView.OnWeekChangeListener listener)
listener - listenerpublic void setOnCalendarSelectListener(CalendarView.OnCalendarSelectListener listener)
listener - listenerpublic final void setOnCalendarRangeSelectListener(CalendarView.OnCalendarRangeSelectListener listener)
listener - listenerpublic final void setOnCalendarMultiSelectListener(CalendarView.OnCalendarMultiSelectListener listener)
listener - listenerpublic final void setSelectRange(int minRange,
int maxRange)
minRange - minRangemaxRange - maxRangepublic final void setSelectStartCalendar(int startYear,
int startMonth,
int startDay)
public final void setSelectStartCalendar(Calendar startCalendar)
public final void setSelectEndCalendar(int endYear,
int endMonth,
int endDay)
public final void setSelectEndCalendar(Calendar endCalendar)
public final void setSelectCalendarRange(int startYear,
int startMonth,
int startDay,
int endYear,
int endMonth,
int endDay)
startYear - startYearstartMonth - startMonthstartDay - startDayendYear - endYearendMonth - endMonthendDay - endDaypublic final void setSelectCalendarRange(Calendar startCalendar, Calendar endCalendar)
startCalendar - startCalendarendCalendar - endCalendarprotected final boolean onCalendarIntercept(Calendar calendar)
calendar - calendarpublic final int getMaxMultiSelectSize()
public final void setMaxMultiSelectSize(int maxMultiSelectSize)
maxMultiSelectSize - 最大多选数量public final int getMinSelectRange()
public final int getMaxSelectRange()
public void setOnCalendarLongClickListener(CalendarView.OnCalendarLongClickListener listener)
listener - listenerpublic void setOnCalendarLongClickListener(CalendarView.OnCalendarLongClickListener listener, boolean preventLongPressedSelect)
preventLongPressedSelect - 防止长按选择日期listener - listenerpublic void setOnViewChangeListener(CalendarView.OnViewChangeListener listener)
listener - listenerpublic void setOnYearViewChangeListener(CalendarView.OnYearViewChangeListener listener)
@Nullable protected android.os.Parcelable onSaveInstanceState()
onSaveInstanceState 在类中 android.view.Viewprotected void onRestoreInstanceState(android.os.Parcelable state)
onRestoreInstanceState 在类中 android.view.Viewstate - 状态protected void onAttachedToWindow()
onAttachedToWindow 在类中 android.view.ViewGroupprotected void onMeasure(int widthMeasureSpec,
int heightMeasureSpec)
onMeasure 在类中 android.widget.FrameLayoutpublic final void setSchemeDate(java.util.Map<java.lang.String,Calendar> mSchemeDates)
mSchemeDates - mSchemeDatesMap 通过自己的需求转换即可public final void clearSchemeDate()
public final void addSchemeDate(Calendar calendar)
calendar - calendarpublic final void addSchemeDate(java.util.Map<java.lang.String,Calendar> mSchemeDates)
mSchemeDates - mSchemeDatespublic final void removeSchemeDate(Calendar calendar)
calendar - calendarpublic void setBackground(int yearViewBackground,
int weekBackground,
int lineBg)
yearViewBackground - 年份卡片的背景色weekBackground - 星期栏背景色lineBg - 线的颜色public void setTextColor(int currentDayTextColor,
int curMonthTextColor,
int otherMonthColor,
int curMonthLunarTextColor,
int otherMonthLunarTextColor)
currentDayTextColor - 今天字体颜色curMonthTextColor - 当前月份字体颜色otherMonthColor - 其它月份字体颜色curMonthLunarTextColor - 当前月份农历字体颜色otherMonthLunarTextColor - 其它农历字体颜色public void setSelectedColor(int selectedThemeColor,
int selectedTextColor,
int selectedLunarTextColor)
selectedThemeColor - 选中的标记颜色selectedTextColor - 选中的字体颜色selectedLunarTextColor - 选中的农历字体颜色public void setThemeColor(int selectedThemeColor,
int schemeColor)
selectedThemeColor - 选中的标记颜色schemeColor - 标记背景色public void setSchemeColor(int schemeColor,
int schemeTextColor,
int schemeLunarTextColor)
schemeLunarTextColor - 标记农历颜色schemeColor - 标记背景色schemeTextColor - 标记字体颜色public void setYearViewTextColor(int yearViewMonthTextColor,
int yearViewDayTextColor,
int yarViewSchemeTextColor)
yearViewMonthTextColor - 年视图月份颜色yearViewDayTextColor - 年视图天的颜色yarViewSchemeTextColor - 年视图标记颜色public void setWeeColor(int weekBackground,
int weekTextColor)
weekBackground - 背景色weekTextColor - 字体颜色public void setCalendarPadding(int mCalendarPadding)
public void setCalendarPaddingLeft(int mCalendarPaddingLeft)
public void setCalendarPaddingRight(int mCalendarPaddingRight)
public final void setSelectDefaultMode()
public void setSelectRangeMode()
public void setSelectMultiMode()
public void setSelectSingleMode()
public void setWeekStarWithSun()
public void setWeekStarWithMon()
public void setWeekStarWithSat()
public boolean isSingleSelectMode()
public void setAllMode()
public void setOnlyCurrentMode()
public void setFixMode()
public final void update()
public void updateWeekBar()
public final void updateCurrentDate()
public java.util.List<Calendar> getCurrentWeekCalendars()
public java.util.List<Calendar> getCurrentMonthCalendars()
public Calendar getSelectedCalendar()
public Calendar getMinRangeCalendar()
public Calendar getMaxRangeCalendar()
public MonthViewPager getMonthViewPager()
public WeekViewPager getWeekViewPager()
protected final boolean isInRange(Calendar calendar)
calendar - calendar