Class DynamicMaterialCardView
java.lang.Object
android.view.View
android.view.ViewGroup
android.widget.FrameLayout
androidx.cardview.widget.CardView
com.google.android.material.card.MaterialCardView
com.pranavpandey.android.dynamic.support.widget.DynamicMaterialCardView
- All Implemented Interfaces:
Drawable.Callback
,AccessibilityEventSource
,KeyEvent.Callback
,ViewManager
,ViewParent
,Checkable
,Shapeable
,BaseWidget
,DynamicCornerWidget<Float>
,DynamicFloatingWidget
,DynamicSurfaceWidget
,DynamicWidget
public class DynamicMaterialCardView
extends MaterialCardView
implements DynamicWidget, DynamicCornerWidget<Float>, DynamicSurfaceWidget, DynamicFloatingWidget
A
MaterialCardView
to apply DynamicTheme
according to the supplied parameters.-
Nested Class Summary
Nested classes/interfaces inherited from class com.google.android.material.card.MaterialCardView
MaterialCardView.CheckedIconGravity, MaterialCardView.OnCheckedChangeListener
Nested classes/interfaces inherited from class android.widget.FrameLayout
FrameLayout.LayoutParams
Nested classes/interfaces inherited from class android.view.ViewGroup
ViewGroup.MarginLayoutParams, ViewGroup.OnHierarchyChangeListener
Nested classes/interfaces inherited from class android.view.View
View.AccessibilityDelegate, View.BaseSavedState, View.DragShadowBuilder, View.MeasureSpec, View.OnApplyWindowInsetsListener, View.OnAttachStateChangeListener, View.OnCapturedPointerListener, View.OnClickListener, View.OnContextClickListener, View.OnCreateContextMenuListener, View.OnDragListener, View.OnFocusChangeListener, View.OnGenericMotionListener, View.OnHoverListener, View.OnKeyListener, View.OnLayoutChangeListener, View.OnLongClickListener, View.OnScrollChangeListener, View.OnSystemUiVisibilityChangeListener, View.OnTouchListener, View.OnUnhandledKeyEventListener
-
Field Summary
Modifier and TypeFieldDescriptionprotected int
Color applied to this view after considering the background aware properties.protected int
The background aware functionality to change this view color according to the background.protected int
Color applied to this view.protected int
Color type applied to this view.protected int
Minimum contrast value to generate contrast color for the background aware functionality.protected int
Background color for this view so that it will remain in contrast with this color.protected int
Background color type for this view so that it will remain in contrast with this color type.protected float
Intended elevation for this view without considering the background.protected boolean
true
if this view is floating.protected boolean
true
to force elevation for this widget.Fields inherited from class com.google.android.material.card.MaterialCardView
CHECKED_ICON_GRAVITY_BOTTOM_END, CHECKED_ICON_GRAVITY_BOTTOM_START, CHECKED_ICON_GRAVITY_TOP_END, CHECKED_ICON_GRAVITY_TOP_START
Fields inherited from class android.view.ViewGroup
CLIP_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_CACHE
Fields inherited from class android.view.View
ACCESSIBILITY_DATA_SENSITIVE_AUTO, ACCESSIBILITY_DATA_SENSITIVE_NO, ACCESSIBILITY_DATA_SENSITIVE_YES, ACCESSIBILITY_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, CONTENT_SENSITIVITY_AUTO, CONTENT_SENSITIVITY_NOT_SENSITIVE, CONTENT_SENSITIVITY_SENSITIVE, DRAG_FLAG_ACCESSIBILITY_ACTION, DRAG_FLAG_GLOBAL, DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION, DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION, DRAG_FLAG_GLOBAL_SAME_APPLICATION, DRAG_FLAG_GLOBAL_URI_READ, DRAG_FLAG_GLOBAL_URI_WRITE, DRAG_FLAG_OPAQUE, DRAG_FLAG_START_INTENT_SENDER_ON_UNHANDLED_DRAG, 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, IMPORTANT_FOR_CONTENT_CAPTURE_AUTO, IMPORTANT_FOR_CONTENT_CAPTURE_NO, IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS, IMPORTANT_FOR_CONTENT_CAPTURE_YES, IMPORTANT_FOR_CONTENT_CAPTURE_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, REQUESTED_FRAME_RATE_CATEGORY_DEFAULT, REQUESTED_FRAME_RATE_CATEGORY_HIGH, REQUESTED_FRAME_RATE_CATEGORY_LOW, REQUESTED_FRAME_RATE_CATEGORY_NO_PREFERENCE, REQUESTED_FRAME_RATE_CATEGORY_NORMAL, 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_CAPTURE_HINT_AUTO, SCROLL_CAPTURE_HINT_EXCLUDE, SCROLL_CAPTURE_HINT_EXCLUDE_DESCENDANTS, SCROLL_CAPTURE_HINT_INCLUDE, 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
-
Constructor Summary
ConstructorDescriptionDynamicMaterialCardView
(Context context) DynamicMaterialCardView
(Context context, AttributeSet attrs) DynamicMaterialCardView
(Context context, AttributeSet attrs, int defStyleAttr) -
Method Summary
Modifier and TypeMethodDescriptionint
Returns the background aware functionality used by this widget.int
getColor()
Returns the value of color applied to this widget.int
getColor
(boolean resolve) Returns the value of color applied to this widget.int
Returns the color type applied to this widget.int
Get the contrast value used by this widget.int
getContrast
(boolean resolve) Get the contrast value used by this widget.float
Returns the contrast ratio for by this widget.int
Returns the value of contrast with color applied to this widget.int
Returns the contrast with color type applied to this widget.Returns the corner radius used by this widget.void
Initialize this widget by setting color type.boolean
Checks whether the background aware functionality is enabled.boolean
Checks whether the background should be used as the surface.boolean
Returns whether this widget a floating view.boolean
Returns whether to force elevation for this widget.boolean
Checks whether the stroke is required for the surface card view.void
loadFromAttributes
(AttributeSet attrs) Load values from the supplied attribute set.protected void
onSizeChanged
(int w, int h, int oldw, int oldh) void
setBackgroundAware
(int backgroundAware) Set the value to make this widget background aware or not.void
setBackgroundColor
(int color) void
setCardBackgroundColor
(int color) void
setCardElevation
(float elevation) void
setColor()
Set color for this widget according to the supplied values.void
setColor
(int color) Set the value of color for this widget.void
setColorType
(int colorType) Set the color type to this widget.void
setContrast
(int contrast) Set the contrast value used for this widget.void
setContrastWithColor
(int contrastWithColor) Set the value of contrast with color for this widget.void
setContrastWithColorType
(int contrastWithColorType) Set the contrast with color type to this widget.void
Set the corner radius for this widget.void
setFloatingView
(boolean floatingView) Set the floating view option for this widget.void
setForceElevation
(boolean forceElevation) Sets whether to force elevation for this widget.void
setStrokeColor
(int strokeColor) void
Set surface for this widget according to the supplied values.Methods inherited from class com.google.android.material.card.MaterialCardView
getCardBackgroundColor, getCardForegroundColor, getCheckedIcon, getCheckedIconGravity, getCheckedIconMargin, getCheckedIconSize, getCheckedIconTint, getContentPaddingBottom, getContentPaddingLeft, getContentPaddingRight, getContentPaddingTop, getProgress, getRadius, getRippleColor, getShapeAppearanceModel, getStrokeColor, getStrokeColorStateList, getStrokeWidth, isCheckable, isChecked, isDragged, onAttachedToWindow, onCreateDrawableState, onInitializeAccessibilityEvent, onInitializeAccessibilityNodeInfo, onMeasure, setBackground, setBackgroundDrawable, setCardBackgroundColor, setCardForegroundColor, setCheckable, setChecked, setCheckedIcon, setCheckedIconGravity, setCheckedIconMargin, setCheckedIconMarginResource, setCheckedIconResource, setCheckedIconSize, setCheckedIconSizeResource, setCheckedIconTint, setClickable, setContentPadding, setDragged, setMaxCardElevation, setOnCheckedChangeListener, setPreventCornerOverlap, setProgress, setRadius, setRippleColor, setRippleColorResource, setShapeAppearanceModel, setStrokeColor, setStrokeWidth, setUseCompatPadding, toggle
Methods inherited from class androidx.cardview.widget.CardView
getCardElevation, getMaxCardElevation, getPreventCornerOverlap, getUseCompatPadding, setMinimumHeight, setMinimumWidth, setPadding, setPaddingRelative
Methods inherited from class android.widget.FrameLayout
checkLayoutParams, generateDefaultLayoutParams, generateLayoutParams, generateLayoutParams, getAccessibilityClassName, getConsiderGoneChildrenWhenMeasuring, getMeasureAllChildren, onLayout, setForegroundGravity, setMeasureAllChildren, shouldDelayChildPressedState
Methods inherited from class android.view.ViewGroup
addChildrenForAccessibility, addExtraDataToAccessibilityNodeInfo, 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, dispatchCreateViewTranslationRequest, dispatchDisplayHint, dispatchDragEvent, dispatchDraw, dispatchDrawableHotspotChanged, dispatchFinishTemporaryDetach, dispatchFreezeSelfOnly, dispatchGenericFocusedEvent, dispatchGenericPointerEvent, dispatchHoverEvent, dispatchKeyEvent, dispatchKeyEventPreIme, dispatchKeyShortcutEvent, dispatchPointerCaptureChanged, dispatchProvideAutofillStructure, dispatchProvideStructure, dispatchRestoreInstanceState, dispatchSaveInstanceState, dispatchScrollCaptureSearch, dispatchSetActivated, dispatchSetPressed, dispatchSetSelected, dispatchStartTemporaryDetach, dispatchSystemUiVisibilityChanged, dispatchThawSelfOnly, dispatchTouchEvent, dispatchTrackballEvent, dispatchUnhandledMove, dispatchVisibilityChanged, dispatchWindowFocusChanged, dispatchWindowInsetsAnimationEnd, dispatchWindowInsetsAnimationPrepare, dispatchWindowInsetsAnimationProgress, dispatchWindowInsetsAnimationStart, dispatchWindowSystemUiVisiblityChanged, dispatchWindowVisibilityChanged, drawableStateChanged, drawChild, endViewTransition, findFocus, findOnBackInvokedDispatcherForChild, findViewsWithText, focusableViewAvailable, focusSearch, gatherTransparentRegion, getChildAt, getChildCount, getChildDrawingOrder, 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, isLayoutSuppressed, isMotionEventSplittingEnabled, isTransitionGroup, jumpDrawablesToCurrentState, layout, measureChild, measureChildren, measureChildWithMargins, notifySubtreeAccessibilityStateChanged, offsetDescendantRectToMyCoords, offsetRectIntoDescendantCoords, 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, setWindowInsetsAnimationCallback, showContextMenuForChild, showContextMenuForChild, startActionModeForChild, startActionModeForChild, startLayoutAnimation, startViewTransition, suppressLayout, updateViewLayout
Methods inherited from class android.view.View
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, clearPendingCredentialRequest, clearViewTranslationCallback, combineMeasuredStates, computeHorizontalScrollExtent, computeHorizontalScrollOffset, computeHorizontalScrollRange, computeScroll, computeSystemWindowInsets, computeVerticalScrollExtent, computeVerticalScrollOffset, computeVerticalScrollRange, createAccessibilityNodeInfo, createContextMenu, destroyDrawingCache, dispatchGenericMotionEvent, dispatchNestedFling, dispatchNestedPreFling, dispatchNestedPrePerformAccessibilityAction, dispatchNestedPreScroll, dispatchNestedScroll, dispatchPopulateAccessibilityEvent, draw, drawableHotspotChanged, findOnBackInvokedDispatcher, findViewById, findViewWithTag, fitSystemWindows, focusSearch, forceHasOverlappingRendering, forceLayout, generateDisplayHash, generateViewId, getAccessibilityDelegate, getAccessibilityLiveRegion, getAccessibilityNodeProvider, getAccessibilityPaneTitle, getAccessibilityTraversalAfter, getAccessibilityTraversalBefore, getAllowedHandwritingDelegatePackageName, getAllowedHandwritingDelegatorPackageName, getAlpha, getAnimation, getAnimationMatrix, getApplicationWindowToken, getAttributeResolutionStack, getAttributeSourceResourceMap, getAutofillHints, getAutofillId, getAutofillType, getAutofillValue, getBackground, getBackgroundTintBlendMode, getBackgroundTintList, getBackgroundTintMode, getBaseline, getBottom, getBottomFadingEdgeStrength, getBottomPaddingOffset, getCameraDistance, getClipBounds, getClipBounds, getClipToOutline, getContentCaptureSession, getContentDescription, getContentSensitivity, getContext, getContextMenuInfo, getDefaultFocusHighlightEnabled, getDefaultSize, getDisplay, getDrawableState, getDrawingCache, getDrawingCache, getDrawingCacheBackgroundColor, getDrawingCacheQuality, getDrawingRect, getDrawingTime, getElevation, getExplicitStyle, getFilterTouchesWhenObscured, getFitsSystemWindows, getFocusable, getFocusables, getFocusedRect, getForeground, getForegroundGravity, getForegroundTintBlendMode, getForegroundTintList, getForegroundTintMode, getFrameContentVelocity, getGlobalVisibleRect, getGlobalVisibleRect, getHandler, getHandwritingBoundsOffsetBottom, getHandwritingBoundsOffsetLeft, getHandwritingBoundsOffsetRight, getHandwritingBoundsOffsetTop, getHandwritingDelegateFlags, getHandwritingDelegatorCallback, getHasOverlappingRendering, getHeight, getHitRect, getHorizontalFadingEdgeLength, getHorizontalScrollbarHeight, getHorizontalScrollbarThumbDrawable, getHorizontalScrollbarTrackDrawable, getId, getImportantForAccessibility, getImportantForAutofill, getImportantForContentCapture, getKeepScreenOn, getKeyDispatcherState, getLabelFor, getLayerType, getLayoutDirection, getLayoutParams, getLeft, getLeftFadingEdgeStrength, getLeftPaddingOffset, getLocalVisibleRect, getLocationInSurface, 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, getPendingCredentialCallback, getPendingCredentialRequest, getPivotX, getPivotY, getPointerIcon, getPreferKeepClearRects, getReceiveContentMimeTypes, getRequestedFrameRate, getResources, getRevealOnFocusHint, getRight, getRightFadingEdgeStrength, getRightPaddingOffset, getRootSurfaceControl, getRootView, getRootWindowInsets, getRotation, getRotationX, getRotationY, getScaleX, getScaleY, getScrollBarDefaultDelayBeforeFade, getScrollBarFadeDuration, getScrollBarSize, getScrollBarStyle, getScrollCaptureHint, getScrollIndicators, getScrollX, getScrollY, getSolidColor, getSourceLayoutResId, getStateDescription, getStateListAnimator, getSuggestedMinimumHeight, getSuggestedMinimumWidth, getSystemGestureExclusionRects, getSystemUiVisibility, getTag, getTag, getTextAlignment, getTextDirection, getTooltipText, getTop, getTopFadingEdgeStrength, getTopPaddingOffset, getTouchables, getTouchDelegate, getTransitionAlpha, getTransitionName, getTranslationX, getTranslationY, getTranslationZ, getUniqueDrawingId, getVerticalFadingEdgeLength, getVerticalScrollbarPosition, getVerticalScrollbarThumbDrawable, getVerticalScrollbarTrackDrawable, getVerticalScrollbarWidth, getViewTranslationResponse, getViewTreeObserver, getVisibility, getWidth, getWindowAttachCount, getWindowId, getWindowInsetsController, getWindowSystemUiVisibility, getWindowToken, getWindowVisibility, getWindowVisibleDisplayFrame, getX, getY, getZ, hasExplicitFocusable, hasFocusable, hasNestedScrollingParent, hasOnClickListeners, hasOnLongClickListeners, hasOverlappingRendering, hasPointerCapture, hasWindowFocus, inflate, invalidate, invalidate, invalidate, invalidateDrawable, invalidateOutline, isAccessibilityDataSensitive, isAccessibilityFocused, isAccessibilityHeading, isActivated, isAttachedToWindow, isAutoHandwritingEnabled, isClickable, isContentSensitive, isContextClickable, isCredential, isDirty, isDrawingCacheEnabled, isDuplicateParentStateEnabled, isEnabled, isFocusable, isFocusableInTouchMode, isFocused, isFocusedByDefault, isForceDarkAllowed, isHandwritingDelegate, isHapticFeedbackEnabled, isHardwareAccelerated, isHorizontalFadingEdgeEnabled, isHorizontalScrollBarEnabled, isHovered, isImportantForAccessibility, isImportantForAutofill, isImportantForContentCapture, isInEditMode, isInLayout, isInTouchMode, isKeyboardNavigationCluster, isLaidOut, isLayoutDirectionResolved, isLayoutRequested, isLongClickable, isNestedScrollingEnabled, isOpaque, isPaddingOffsetRequired, isPaddingRelative, isPivotSet, isPreferKeepClear, isPressed, isSaveEnabled, isSaveFromParentEnabled, isScreenReaderFocusable, isScrollbarFadingEnabled, isScrollContainer, isSelected, isShowingLayoutBounds, isShown, isSoundEffectsEnabled, isTemporarilyDetached, isTextAlignmentResolved, isTextDirectionResolved, isVerticalFadingEdgeEnabled, isVerticalScrollBarEnabled, isVisibleToUserForAutofill, keyboardNavigationClusterSearch, measure, mergeDrawableStates, offsetLeftAndRight, offsetTopAndBottom, onAnimationEnd, onAnimationStart, onApplyWindowInsets, onCancelPendingInputEvents, onCapturedPointerEvent, onCheckIsTextEditor, onConfigurationChanged, onCreateContextMenu, onCreateInputConnection, onCreateViewTranslationRequest, onCreateVirtualViewTranslationRequests, onDisplayHint, onDragEvent, onDraw, onDrawForeground, onDrawScrollBars, onFilterTouchEventForSecurity, onFinishInflate, onFinishTemporaryDetach, onFocusChanged, onGenericMotionEvent, onHoverChanged, onHoverEvent, onKeyDown, onKeyLongPress, onKeyMultiple, onKeyPreIme, onKeyShortcut, onKeyUp, onOverScrolled, onPointerCaptureChange, onPopulateAccessibilityEvent, onProvideAutofillStructure, onProvideAutofillVirtualStructure, onProvideContentCaptureStructure, onProvideStructure, onProvideVirtualStructure, onReceiveContent, onRestoreInstanceState, onRtlPropertiesChanged, onSaveInstanceState, onScreenStateChanged, onScrollCaptureSearch, onScrollChanged, onSetAlpha, onStartTemporaryDetach, onTouchEvent, onTrackballEvent, onViewTranslationResponse, onVirtualViewTranslationResponses, onVisibilityAggregated, onVisibilityChanged, onWindowFocusChanged, onWindowSystemUiVisibilityChanged, onWindowVisibilityChanged, overScrollBy, performAccessibilityAction, performClick, performContextClick, performContextClick, performHapticFeedback, performHapticFeedback, performLongClick, performLongClick, performReceiveContent, 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, requestUnbufferedDispatch, requireViewById, resetPivot, resolveSize, resolveSizeAndState, restoreHierarchyState, saveAttributeDataForStyleable, saveHierarchyState, scheduleDrawable, scrollBy, scrollTo, sendAccessibilityEvent, sendAccessibilityEventUnchecked, setAccessibilityDataSensitive, setAccessibilityDelegate, setAccessibilityHeading, setAccessibilityLiveRegion, setAccessibilityPaneTitle, setAccessibilityTraversalAfter, setAccessibilityTraversalBefore, setActivated, setAllowClickWhenDisabled, setAllowedHandwritingDelegatePackage, setAllowedHandwritingDelegatorPackage, setAlpha, setAnimation, setAnimationMatrix, setAutofillHints, setAutofillId, setAutoHandwritingEnabled, setBackgroundResource, setBackgroundTintBlendMode, setBackgroundTintList, setBackgroundTintMode, setBottom, setCameraDistance, setClipBounds, setClipToOutline, setContentCaptureSession, setContentDescription, setContentSensitivity, setContextClickable, setDefaultFocusHighlightEnabled, setDrawingCacheBackgroundColor, setDrawingCacheEnabled, setDrawingCacheQuality, setDuplicateParentStateEnabled, setElevation, setEnabled, setFadingEdgeLength, setFilterTouchesWhenObscured, setFitsSystemWindows, setFocusable, setFocusable, setFocusableInTouchMode, setFocusedByDefault, setForceDarkAllowed, setForeground, setForegroundTintBlendMode, setForegroundTintList, setForegroundTintMode, setFrameContentVelocity, setHandwritingBoundsOffsets, setHandwritingDelegateFlags, setHandwritingDelegatorCallback, setHapticFeedbackEnabled, setHasTransientState, setHorizontalFadingEdgeEnabled, setHorizontalScrollBarEnabled, setHorizontalScrollbarThumbDrawable, setHorizontalScrollbarTrackDrawable, setHovered, setId, setImportantForAccessibility, setImportantForAutofill, setImportantForContentCapture, setIsCredential, setIsHandwritingDelegate, setKeepScreenOn, setKeyboardNavigationCluster, setLabelFor, setLayerPaint, setLayerType, setLayoutDirection, setLayoutParams, setLeft, setLeftTopRightBottom, setLongClickable, setMeasuredDimension, setNestedScrollingEnabled, setNextClusterForwardId, setNextFocusDownId, setNextFocusForwardId, setNextFocusLeftId, setNextFocusRightId, setNextFocusUpId, setOnApplyWindowInsetsListener, setOnCapturedPointerListener, setOnClickListener, setOnContextClickListener, setOnCreateContextMenuListener, setOnDragListener, setOnFocusChangeListener, setOnGenericMotionListener, setOnHoverListener, setOnKeyListener, setOnLongClickListener, setOnReceiveContentListener, setOnScrollChangeListener, setOnSystemUiVisibilityChangeListener, setOnTouchListener, setOutlineAmbientShadowColor, setOutlineProvider, setOutlineSpotShadowColor, setOverScrollMode, setPendingCredentialRequest, setPivotX, setPivotY, setPointerIcon, setPreferKeepClear, setPreferKeepClearRects, setPressed, setRenderEffect, setRequestedFrameRate, setRevealOnFocusHint, setRight, setRotation, setRotationX, setRotationY, setSaveEnabled, setSaveFromParentEnabled, setScaleX, setScaleY, setScreenReaderFocusable, setScrollBarDefaultDelayBeforeFade, setScrollBarFadeDuration, setScrollbarFadingEnabled, setScrollBarSize, setScrollBarStyle, setScrollCaptureCallback, setScrollCaptureHint, setScrollContainer, setScrollIndicators, setScrollIndicators, setScrollX, setScrollY, setSelected, setSoundEffectsEnabled, setStateDescription, setStateListAnimator, setSystemGestureExclusionRects, setSystemUiVisibility, setTag, setTag, setTextAlignment, setTextDirection, setTooltipText, setTop, setTouchDelegate, setTransitionAlpha, setTransitionName, setTransitionVisibility, setTranslationX, setTranslationY, setTranslationZ, setVerticalFadingEdgeEnabled, setVerticalScrollBarEnabled, setVerticalScrollbarPosition, setVerticalScrollbarThumbDrawable, setVerticalScrollbarTrackDrawable, setViewTranslationCallback, setVisibility, setWillNotCacheDrawing, setWillNotDraw, setX, setY, setZ, showContextMenu, showContextMenu, startActionMode, startActionMode, startAnimation, startDrag, startDragAndDrop, startNestedScroll, stopNestedScroll, toString, transformMatrixToGlobal, transformMatrixToLocal, unscheduleDrawable, unscheduleDrawable, updateDragShadow, verifyDrawable, willNotCacheDrawing, willNotDraw
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.pranavpandey.android.dynamic.support.widget.base.DynamicWidget
setEnabled
Methods inherited from interface android.view.ViewParent
canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, createContextMenu, getLayoutDirection, getParent, getParentForAccessibility, getTextAlignment, getTextDirection, isLayoutDirectionResolved, isLayoutRequested, isTextAlignmentResolved, isTextDirectionResolved, keyboardNavigationClusterSearch, requestFitSystemWindows, requestLayout
-
Field Details
-
mColorType
protected int mColorTypeColor type applied to this view.- See Also:
-
mContrastWithColorType
protected int mContrastWithColorTypeBackground color type for this view so that it will remain in contrast with this color type. -
mColor
Color applied to this view. -
mAppliedColor
Color applied to this view after considering the background aware properties. -
mContrastWithColor
Background color for this view so that it will remain in contrast with this color. -
mBackgroundAware
protected int mBackgroundAwareThe background aware functionality to change this view color according to the background. It was introduced to provide better legibility for colored views and to avoid dark view on dark background like situations.If this is enabled then, it will check for the contrast color and do color calculations according to that color so that this text view will always be visible on that background. If no contrast color is found then, it will take the default background color.
- See Also:
-
mContrast
protected int mContrastMinimum contrast value to generate contrast color for the background aware functionality. -
mForceElevation
protected boolean mForceElevationtrue
to force elevation for this widget.When disabled, widget will follow the dynamic theme elevation.
-
mFloatingView
protected boolean mFloatingViewtrue
if this view is floating.It will be useful to provide the stroke for popup and dialogs.
-
mElevation
protected float mElevationIntended elevation for this view without considering the background.
-
-
Constructor Details
-
DynamicMaterialCardView
-
DynamicMaterialCardView
-
DynamicMaterialCardView
public DynamicMaterialCardView(@NonNull Context context, @Nullable AttributeSet attrs, @AttrRes int defStyleAttr)
-
-
Method Details
-
loadFromAttributes
Description copied from interface:BaseWidget
Load values from the supplied attribute set.- Specified by:
loadFromAttributes
in interfaceBaseWidget
- Parameters:
attrs
- The supplied attribute set to load the values.
-
initialize
public void initialize()Description copied from interface:BaseWidget
Initialize this widget by setting color type. If it is background aware then, background color will also taken into account while setting the color filter.- Specified by:
initialize
in interfaceBaseWidget
- See Also:
-
getColorType
public int getColorType()Description copied from interface:DynamicWidget
Returns the color type applied to this widget.- Specified by:
getColorType
in interfaceDynamicWidget
- Returns:
- The color type applied to this widget.
- See Also:
-
setColorType
public void setColorType(int colorType) Description copied from interface:DynamicWidget
Set the color type to this widget.- Specified by:
setColorType
in interfaceDynamicWidget
- Parameters:
colorType
- The color type for this widget.- See Also:
-
getContrastWithColorType
public int getContrastWithColorType()Description copied from interface:DynamicWidget
Returns the contrast with color type applied to this widget.- Specified by:
getContrastWithColorType
in interfaceDynamicWidget
- Returns:
- The contrast with color type applied to this widget.
- See Also:
-
setContrastWithColorType
public void setContrastWithColorType(int contrastWithColorType) Description copied from interface:DynamicWidget
Set the contrast with color type to this widget.- Specified by:
setContrastWithColorType
in interfaceDynamicWidget
- Parameters:
contrastWithColorType
- The contrast with color type for this widget.- See Also:
-
getColor
Description copied from interface:DynamicWidget
Returns the value of color applied to this widget.- Specified by:
getColor
in interfaceDynamicWidget
- Parameters:
resolve
-true
to resolve the applied color.- Returns:
- The value of color applied to this widget.
-
getColor
Description copied from interface:DynamicWidget
Returns the value of color applied to this widget.- Specified by:
getColor
in interfaceDynamicWidget
- Returns:
- The value of color applied to this widget.
-
setColor
Description copied from interface:DynamicWidget
Set the value of color for this widget.- Specified by:
setColor
in interfaceDynamicWidget
- Parameters:
color
- Color for this widget.
-
getContrastWithColor
Description copied from interface:DynamicWidget
Returns the value of contrast with color applied to this widget.- Specified by:
getContrastWithColor
in interfaceDynamicWidget
- Returns:
- The value of contrast with color applied to this widget.
-
setContrastWithColor
Description copied from interface:DynamicWidget
Set the value of contrast with color for this widget.- Specified by:
setContrastWithColor
in interfaceDynamicWidget
- Parameters:
contrastWithColor
- Contrast with color for this widget.
-
getBackgroundAware
public int getBackgroundAware()Description copied from interface:DynamicWidget
Returns the background aware functionality used by this widget.- Specified by:
getBackgroundAware
in interfaceDynamicWidget
- Returns:
- The background aware functionality used by this widget.
-
isBackgroundAware
public boolean isBackgroundAware()Description copied from interface:DynamicWidget
Checks whether the background aware functionality is enabled.- Specified by:
isBackgroundAware
in interfaceDynamicWidget
- Returns:
true
if this widget changes color according to the background.
-
setBackgroundAware
public void setBackgroundAware(int backgroundAware) Description copied from interface:DynamicWidget
Set the value to make this widget background aware or not.- Specified by:
setBackgroundAware
in interfaceDynamicWidget
- Parameters:
backgroundAware
- The background aware functionality to be set.
-
getContrast
public int getContrast(boolean resolve) Description copied from interface:DynamicWidget
Get the contrast value used by this widget.- Specified by:
getContrast
in interfaceDynamicWidget
- Parameters:
resolve
-true
to resolve auto contrast.- Returns:
- The contrast value used by this widget.
-
getContrast
public int getContrast()Description copied from interface:DynamicWidget
Get the contrast value used by this widget.- Specified by:
getContrast
in interfaceDynamicWidget
- Returns:
- The contrast value used by this widget.
-
getContrastRatio
public float getContrastRatio()Description copied from interface:DynamicWidget
Returns the contrast ratio for by this widget.- Specified by:
getContrastRatio
in interfaceDynamicWidget
- Returns:
- The contrast ratio for by this widget.
-
setContrast
public void setContrast(int contrast) Description copied from interface:DynamicWidget
Set the contrast value used for this widget.- Specified by:
setContrast
in interfaceDynamicWidget
- Parameters:
contrast
- The contrast value to be set.
-
setBackgroundColor
- Overrides:
setBackgroundColor
in classView
-
onSizeChanged
protected void onSizeChanged(int w, int h, int oldw, int oldh) - Overrides:
onSizeChanged
in classView
-
setCardElevation
public void setCardElevation(float elevation) - Overrides:
setCardElevation
in classMaterialCardView
-
getCorner
Description copied from interface:DynamicCornerWidget
Returns the corner radius used by this widget.- Specified by:
getCorner
in interfaceDynamicCornerWidget<Float>
- Returns:
- The corner radius used by this widget.
-
setCorner
Description copied from interface:DynamicCornerWidget
Set the corner radius for this widget.- Specified by:
setCorner
in interfaceDynamicCornerWidget<Float>
- Parameters:
cornerSize
- The corner radius to be set.
-
setCardBackgroundColor
- Overrides:
setCardBackgroundColor
in classMaterialCardView
-
setStrokeColor
- Overrides:
setStrokeColor
in classMaterialCardView
-
setColor
public void setColor()Description copied from interface:DynamicWidget
Set color for this widget according to the supplied values.- Specified by:
setColor
in interfaceDynamicWidget
-
isForceElevation
public boolean isForceElevation()Description copied from interface:DynamicSurfaceWidget
Returns whether to force elevation for this widget.- Specified by:
isForceElevation
in interfaceDynamicSurfaceWidget
- Returns:
true
to force elevation for this widget.
-
setForceElevation
public void setForceElevation(boolean forceElevation) Description copied from interface:DynamicSurfaceWidget
Sets whether to force elevation for this widget.- Specified by:
setForceElevation
in interfaceDynamicSurfaceWidget
- Parameters:
forceElevation
-true
to force elevation.
-
isFloatingView
public boolean isFloatingView()Description copied from interface:DynamicFloatingWidget
Returns whether this widget a floating view.- Specified by:
isFloatingView
in interfaceDynamicFloatingWidget
- Returns:
true
if this view is a floating view.
-
setFloatingView
public void setFloatingView(boolean floatingView) Description copied from interface:DynamicFloatingWidget
Set the floating view option for this widget.- Specified by:
setFloatingView
in interfaceDynamicFloatingWidget
- Parameters:
floatingView
-true
to enable floating view.
-
setSurface
public void setSurface()Description copied from interface:DynamicSurfaceWidget
Set surface for this widget according to the supplied values.- Specified by:
setSurface
in interfaceDynamicSurfaceWidget
-
isBackgroundSurface
public boolean isBackgroundSurface()Description copied from interface:DynamicSurfaceWidget
Checks whether the background should be used as the surface.- Specified by:
isBackgroundSurface
in interfaceDynamicSurfaceWidget
- Returns:
true
if the background should be used as surface.
-
isStrokeRequired
public boolean isStrokeRequired()Description copied from interface:DynamicSurfaceWidget
Checks whether the stroke is required for the surface card view.- Specified by:
isStrokeRequired
in interfaceDynamicSurfaceWidget
- Returns:
true
if the stroke is required for this surface card view.- See Also:
-