Class DynamicTextView
java.lang.Object
android.view.View
android.widget.TextView
androidx.appcompat.widget.AppCompatTextView
com.google.android.material.textview.MaterialTextView
com.pranavpandey.android.dynamic.support.widget.DynamicTextView
- All Implemented Interfaces:
Drawable.Callback
,AccessibilityEventSource
,KeyEvent.Callback
,ViewTreeObserver.OnPreDrawListener
,EmojiCompatConfigurationView
,TintableBackgroundView
,AutoSizeableTextView
,TintableCompoundDrawablesView
,BaseWidget
,DynamicLinkWidget
,DynamicRtlWidget
,DynamicWidget
public class DynamicTextView
extends MaterialTextView
implements DynamicWidget, DynamicLinkWidget, DynamicRtlWidget
A
MaterialTextView
to apply DynamicTheme
according to the supplied parameters.-
Nested Class Summary
Nested classes/interfaces inherited from class android.widget.TextView
TextView.BufferType, TextView.OnEditorActionListener, TextView.SavedState
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
Original text appearance attribute resource.protected int
Color applied to this view after considering the background aware properties.protected int
Link 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
Original text color attribute resource.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 int
Link color applied to this view.protected int
Link color type applied to this view.protected boolean
true
if dynamic RTL support is enabled for this widget.Fields inherited from class android.widget.TextView
AUTO_SIZE_TEXT_TYPE_NONE, AUTO_SIZE_TEXT_TYPE_UNIFORM, FOCUSED_SEARCH_RESULT_INDEX_NONE
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
Fields inherited from interface androidx.core.widget.AutoSizeableTextView
PLATFORM_SUPPORTS_AUTOSIZE
-
Constructor Summary
ConstructorDescriptionDynamicTextView
(Context context) DynamicTextView
(Context context, AttributeSet attrs) DynamicTextView
(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.int
Returns the value of link color applied to this widget.int
getLinkColor
(boolean resolve) Returns the value of link color applied to this widget.int
Returns the link color type applied to this widget.void
Initialize this widget by setting color type.boolean
Checks whether the background aware functionality is enabled.boolean
Returns whether to enable dynamic RTL support for this widget.void
loadFromAttributes
(AttributeSet attrs) Load values from the supplied attribute set.void
setBackgroundAware
(int backgroundAware) Set the value to make this widget background aware or not.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
setEnabled
(boolean enabled) Override this method to handle state changes for this widget.void
Set link color for this widget according to the supplied values.void
setLinkColor
(int linkColor) Set the value of link color for this widget.void
setLinkColorType
(int linkColorType) Set the link color type to this widget.void
setRtlSupport
(boolean rtlSupport) Sets the dynamic RTL support for this widget.Methods inherited from class com.google.android.material.textview.MaterialTextView
setTextAppearance
Methods inherited from class androidx.appcompat.widget.AppCompatTextView
drawableStateChanged, getAutoSizeMaxTextSize, getAutoSizeMinTextSize, getAutoSizeStepGranularity, getAutoSizeTextAvailableSizes, getAutoSizeTextType, getCustomSelectionActionModeCallback, getFirstBaselineToTopHeight, getLastBaselineToBottomHeight, getSupportBackgroundTintList, getSupportBackgroundTintMode, getSupportCompoundDrawablesTintList, getSupportCompoundDrawablesTintMode, getText, getTextClassifier, getTextMetricsParamsCompat, isEmojiCompatEnabled, onCreateInputConnection, onLayout, onMeasure, onTextChanged, setAllCaps, setAutoSizeTextTypeUniformWithConfiguration, setAutoSizeTextTypeUniformWithPresetSizes, setAutoSizeTextTypeWithDefaults, setBackgroundDrawable, setBackgroundResource, setCompoundDrawables, setCompoundDrawablesRelative, setCompoundDrawablesRelativeWithIntrinsicBounds, setCompoundDrawablesRelativeWithIntrinsicBounds, setCompoundDrawablesWithIntrinsicBounds, setCompoundDrawablesWithIntrinsicBounds, setCustomSelectionActionModeCallback, setEmojiCompatEnabled, setFilters, setFirstBaselineToTopHeight, setLastBaselineToBottomHeight, setLineHeight, setPrecomputedText, setSupportBackgroundTintList, setSupportBackgroundTintMode, setSupportCompoundDrawablesTintList, setSupportCompoundDrawablesTintMode, setTextClassifier, setTextFuture, setTextMetricsParamsCompat, setTextSize, setTypeface
Methods inherited from class android.widget.TextView
addExtraDataToAccessibilityNodeInfo, addTextChangedListener, append, append, autofill, beginBatchEdit, bringPointIntoView, bringPointIntoView, cancelLongPress, clearComposingText, computeHorizontalScrollRange, computeScroll, computeVerticalScrollExtent, computeVerticalScrollRange, debug, didTouchFocusSelect, drawableHotspotChanged, endBatchEdit, extractText, findViewsWithText, getAccessibilityClassName, getAutofillHints, getAutofillType, getAutofillValue, getAutoLinkMask, getBaseline, getBottomPaddingOffset, getBreakStrategy, getCompoundDrawablePadding, getCompoundDrawables, getCompoundDrawablesRelative, getCompoundDrawableTintBlendMode, getCompoundDrawableTintList, getCompoundDrawableTintMode, getCompoundPaddingBottom, getCompoundPaddingEnd, getCompoundPaddingLeft, getCompoundPaddingRight, getCompoundPaddingStart, getCompoundPaddingTop, getCurrentHintTextColor, getCurrentTextColor, getCustomInsertionActionModeCallback, getDefaultEditable, getDefaultMovementMethod, getEditableText, getEllipsize, getError, getExtendedPaddingBottom, getExtendedPaddingTop, getFilters, getFocusedRect, getFocusedSearchResultHighlightColor, getFocusedSearchResultIndex, getFontFeatureSettings, getFontVariationSettings, getFreezesText, getGravity, getHighlightColor, getHighlights, getHint, getHintTextColors, getHyphenationFrequency, getImeActionId, getImeActionLabel, getImeHintLocales, getImeOptions, getIncludeFontPadding, getInputExtras, getInputType, getJustificationMode, getKeyListener, getLayout, getLeftFadingEdgeStrength, getLeftPaddingOffset, getLetterSpacing, getLineBounds, getLineBreakStyle, getLineBreakWordStyle, getLineCount, getLineHeight, getLineSpacingExtra, getLineSpacingMultiplier, getLinksClickable, getLinkTextColors, getMarqueeRepeatLimit, getMaxEms, getMaxHeight, getMaxLines, getMaxWidth, getMinEms, getMinHeight, getMinimumFontMetrics, getMinLines, getMinWidth, getMovementMethod, getOffsetForPosition, getPaint, getPaintFlags, getPrivateImeOptions, getRightFadingEdgeStrength, getRightPaddingOffset, getSearchResultHighlightColor, getSearchResultHighlights, getSelectionEnd, getSelectionStart, getShadowColor, getShadowDx, getShadowDy, getShadowRadius, getShiftDrawingOffsetForStartOverhang, getShowSoftInputOnFocus, getTextColors, getTextCursorDrawable, getTextDirectionHeuristic, getTextLocale, getTextLocales, getTextMetricsParams, getTextScaleX, getTextSelectHandle, getTextSelectHandleLeft, getTextSelectHandleRight, getTextSize, getTextSizeUnit, getTopPaddingOffset, getTotalPaddingBottom, getTotalPaddingEnd, getTotalPaddingLeft, getTotalPaddingRight, getTotalPaddingStart, getTotalPaddingTop, getTransformationMethod, getTypeface, getUrls, getUseBoundsForWidth, hasOverlappingRendering, hasSelection, invalidateDrawable, isAllCaps, isAutoHandwritingEnabled, isCursorVisible, isElegantTextHeight, isFallbackLineSpacing, isHorizontallyScrollable, isInputMethodTarget, isLocalePreferredLineHeightForMinimumUsed, isPaddingOffsetRequired, isSingleLine, isSuggestionsEnabled, isTextSelectable, jumpDrawablesToCurrentState, length, moveCursorToVisibleOffset, onAttachedToWindow, onBeginBatchEdit, onCheckIsTextEditor, onCommitCompletion, onCommitCorrection, onConfigurationChanged, onCreateContextMenu, onCreateDrawableState, onCreateViewTranslationRequest, onDragEvent, onDraw, onEditorAction, onEndBatchEdit, onFocusChanged, onGenericMotionEvent, onKeyDown, onKeyMultiple, onKeyPreIme, onKeyShortcut, onKeyUp, onPreDraw, onPrivateIMECommand, onReceiveContent, onResolvePointerIcon, onRestoreInstanceState, onRtlPropertiesChanged, onSaveInstanceState, onScreenStateChanged, onScrollChanged, onSelectionChanged, onTextContextMenuItem, onTouchEvent, onTrackballEvent, onVisibilityAggregated, onVisibilityChanged, onWindowFocusChanged, performLongClick, removeTextChangedListener, sendAccessibilityEventUnchecked, setAutoLinkMask, setBreakStrategy, setCompoundDrawablePadding, setCompoundDrawableTintBlendMode, setCompoundDrawableTintList, setCompoundDrawableTintMode, setCursorVisible, setCustomInsertionActionModeCallback, setEditableFactory, setElegantTextHeight, setEllipsize, setEms, setError, setError, setExtractedText, setFallbackLineSpacing, setFocusedSearchResultHighlightColor, setFocusedSearchResultIndex, setFontFeatureSettings, setFontVariationSettings, setFrame, setFreezesText, setGravity, setHeight, setHighlightColor, setHighlights, setHint, setHint, setHintTextColor, setHintTextColor, setHorizontallyScrolling, setHyphenationFrequency, setImeActionLabel, setImeHintLocales, setImeOptions, setIncludeFontPadding, setInputExtras, setInputType, setJustificationMode, setKeyListener, setLetterSpacing, setLineBreakStyle, setLineBreakWordStyle, setLineHeight, setLines, setLineSpacing, setLinksClickable, setLinkTextColor, setLinkTextColor, setLocalePreferredLineHeightForMinimumUsed, setMarqueeRepeatLimit, setMaxEms, setMaxHeight, setMaxLines, setMaxWidth, setMinEms, setMinHeight, setMinimumFontMetrics, setMinLines, setMinWidth, setMovementMethod, setOnEditorActionListener, setPadding, setPaddingRelative, setPaintFlags, setPrivateImeOptions, setRawInputType, setScroller, setSearchResultHighlightColor, setSearchResultHighlights, setSelectAllOnFocus, setSelected, setShadowLayer, setShiftDrawingOffsetForStartOverhang, setShowSoftInputOnFocus, setSingleLine, setSingleLine, setSpannableFactory, setText, setText, setText, setText, setText, setTextAppearance, setTextColor, setTextColor, setTextCursorDrawable, setTextCursorDrawable, setTextIsSelectable, setTextKeepState, setTextKeepState, setTextLocale, setTextLocales, setTextMetricsParams, setTextScaleX, setTextSelectHandle, setTextSelectHandle, setTextSelectHandleLeft, setTextSelectHandleLeft, setTextSelectHandleRight, setTextSelectHandleRight, setTextSize, setTransformationMethod, setTypeface, setUseBoundsForWidth, setWidth, showContextMenu, showContextMenu, verifyDrawable
Methods inherited from class android.view.View
addChildrenForAccessibility, addFocusables, addFocusables, addKeyboardNavigationClusters, addOnAttachStateChangeListener, addOnLayoutChangeListener, addOnUnhandledKeyEventListener, addTouchables, animate, announceForAccessibility, autofill, awakenScrollBars, awakenScrollBars, awakenScrollBars, bringToFront, buildDrawingCache, buildDrawingCache, buildLayer, callOnClick, cancelDragAndDrop, cancelPendingInputEvents, canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, canScrollHorizontally, canScrollVertically, checkInputConnectionProxy, clearAnimation, clearFocus, clearPendingCredentialRequest, clearViewTranslationCallback, combineMeasuredStates, computeHorizontalScrollExtent, computeHorizontalScrollOffset, computeSystemWindowInsets, computeVerticalScrollOffset, createAccessibilityNodeInfo, createContextMenu, destroyDrawingCache, dispatchApplyWindowInsets, dispatchCapturedPointerEvent, dispatchConfigurationChanged, dispatchCreateViewTranslationRequest, dispatchDisplayHint, dispatchDragEvent, dispatchDraw, dispatchDrawableHotspotChanged, dispatchFinishTemporaryDetach, dispatchGenericFocusedEvent, dispatchGenericMotionEvent, dispatchGenericPointerEvent, dispatchHoverEvent, dispatchKeyEvent, dispatchKeyEventPreIme, dispatchKeyShortcutEvent, dispatchNestedFling, dispatchNestedPreFling, dispatchNestedPrePerformAccessibilityAction, dispatchNestedPreScroll, dispatchNestedScroll, dispatchPointerCaptureChanged, dispatchPopulateAccessibilityEvent, dispatchProvideAutofillStructure, dispatchProvideStructure, dispatchRestoreInstanceState, dispatchSaveInstanceState, dispatchScrollCaptureSearch, dispatchSetActivated, dispatchSetPressed, dispatchSetSelected, dispatchStartTemporaryDetach, dispatchSystemUiVisibilityChanged, dispatchTouchEvent, dispatchTrackballEvent, dispatchUnhandledMove, dispatchVisibilityChanged, dispatchWindowFocusChanged, dispatchWindowInsetsAnimationEnd, dispatchWindowInsetsAnimationPrepare, dispatchWindowInsetsAnimationProgress, dispatchWindowInsetsAnimationStart, dispatchWindowSystemUiVisiblityChanged, dispatchWindowVisibilityChanged, draw, findFocus, findOnBackInvokedDispatcher, findViewById, findViewWithTag, fitSystemWindows, focusSearch, forceHasOverlappingRendering, forceLayout, gatherTransparentRegion, generateDisplayHash, generateViewId, getAccessibilityDelegate, getAccessibilityLiveRegion, getAccessibilityNodeProvider, getAccessibilityPaneTitle, getAccessibilityTraversalAfter, getAccessibilityTraversalBefore, getAllowedHandwritingDelegatePackageName, getAllowedHandwritingDelegatorPackageName, getAlpha, getAnimation, getAnimationMatrix, getApplicationWindowToken, getAttributeResolutionStack, getAttributeSourceResourceMap, getAutofillId, getBackground, getBackgroundTintBlendMode, getBackgroundTintList, getBackgroundTintMode, getBottom, getBottomFadingEdgeStrength, 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, 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, getLocalVisibleRect, getLocationInSurface, getLocationInWindow, getLocationOnScreen, getMatrix, getMeasuredHeight, getMeasuredHeightAndState, getMeasuredState, getMeasuredWidth, getMeasuredWidthAndState, getMinimumHeight, getMinimumWidth, getNextClusterForwardId, getNextFocusDownId, getNextFocusForwardId, getNextFocusLeftId, getNextFocusRightId, getNextFocusUpId, getOnFocusChangeListener, getOutlineAmbientShadowColor, getOutlineProvider, getOutlineSpotShadowColor, getOverlay, getOverScrollMode, getPaddingBottom, getPaddingEnd, getPaddingLeft, getPaddingRight, getPaddingStart, getPaddingTop, getParent, getParentForAccessibility, getPendingCredentialCallback, getPendingCredentialRequest, getPivotX, getPivotY, getPointerIcon, getPreferKeepClearRects, getReceiveContentMimeTypes, getRequestedFrameRate, getResources, getRevealOnFocusHint, getRight, 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, 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, hasFocus, hasFocusable, hasNestedScrollingParent, hasOnClickListeners, hasOnLongClickListeners, hasPointerCapture, hasTransientState, hasWindowFocus, inflate, invalidate, invalidate, invalidate, invalidateOutline, isAccessibilityDataSensitive, isAccessibilityFocused, isAccessibilityHeading, isActivated, isAttachedToWindow, 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, isPaddingRelative, isPivotSet, isPreferKeepClear, isPressed, isSaveEnabled, isSaveFromParentEnabled, isScreenReaderFocusable, isScrollbarFadingEnabled, isScrollContainer, isSelected, isShowingLayoutBounds, isShown, isSoundEffectsEnabled, isTemporarilyDetached, isTextAlignmentResolved, isTextDirectionResolved, isVerticalFadingEdgeEnabled, isVerticalScrollBarEnabled, isVisibleToUserForAutofill, keyboardNavigationClusterSearch, layout, measure, mergeDrawableStates, offsetLeftAndRight, offsetTopAndBottom, onAnimationEnd, onAnimationStart, onApplyWindowInsets, onCancelPendingInputEvents, onCapturedPointerEvent, onCreateVirtualViewTranslationRequests, onDetachedFromWindow, onDisplayHint, onDrawForeground, onDrawScrollBars, onFilterTouchEventForSecurity, onFinishInflate, onFinishTemporaryDetach, onHoverChanged, onHoverEvent, onInitializeAccessibilityEvent, onInitializeAccessibilityNodeInfo, onKeyLongPress, onOverScrolled, onPointerCaptureChange, onPopulateAccessibilityEvent, onProvideAutofillStructure, onProvideAutofillVirtualStructure, onProvideContentCaptureStructure, onProvideStructure, onProvideVirtualStructure, onScrollCaptureSearch, onSetAlpha, onSizeChanged, onStartTemporaryDetach, onViewTranslationResponse, onVirtualViewTranslationResponses, onWindowSystemUiVisibilityChanged, onWindowVisibilityChanged, overScrollBy, performAccessibilityAction, performClick, performContextClick, performContextClick, performHapticFeedback, performHapticFeedback, performLongClick, performReceiveContent, playSoundEffect, post, postDelayed, postInvalidate, postInvalidate, postInvalidateDelayed, postInvalidateDelayed, postInvalidateOnAnimation, postInvalidateOnAnimation, postOnAnimation, postOnAnimationDelayed, refreshDrawableState, releasePointerCapture, removeCallbacks, removeOnAttachStateChangeListener, removeOnLayoutChangeListener, removeOnUnhandledKeyEventListener, requestApplyInsets, requestFitSystemWindows, requestFocus, requestFocus, requestFocus, requestFocusFromTouch, requestLayout, requestPointerCapture, requestRectangleOnScreen, requestRectangleOnScreen, requestUnbufferedDispatch, requestUnbufferedDispatch, requireViewById, resetPivot, resolveSize, resolveSizeAndState, restoreDefaultFocus, restoreHierarchyState, saveAttributeDataForStyleable, saveHierarchyState, scheduleDrawable, scrollBy, scrollTo, sendAccessibilityEvent, setAccessibilityDataSensitive, setAccessibilityDelegate, setAccessibilityHeading, setAccessibilityLiveRegion, setAccessibilityPaneTitle, setAccessibilityTraversalAfter, setAccessibilityTraversalBefore, setActivated, setAllowClickWhenDisabled, setAllowedHandwritingDelegatePackage, setAllowedHandwritingDelegatorPackage, setAlpha, setAnimation, setAnimationMatrix, setAutofillHints, setAutofillId, setAutoHandwritingEnabled, setBackground, setBackgroundColor, setBackgroundTintBlendMode, setBackgroundTintList, setBackgroundTintMode, setBottom, setCameraDistance, setClickable, setClipBounds, setClipToOutline, setContentCaptureSession, setContentDescription, setContentSensitivity, setContextClickable, setDefaultFocusHighlightEnabled, setDrawingCacheBackgroundColor, setDrawingCacheEnabled, setDrawingCacheQuality, setDuplicateParentStateEnabled, setElevation, setFadingEdgeLength, setFilterTouchesWhenObscured, setFitsSystemWindows, setFocusable, setFocusable, setFocusableInTouchMode, setFocusedByDefault, setForceDarkAllowed, setForeground, setForegroundGravity, 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, setMinimumHeight, setMinimumWidth, 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, 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, setWindowInsetsAnimationCallback, setX, setY, setZ, startActionMode, startActionMode, startAnimation, startDrag, startDragAndDrop, startNestedScroll, stopNestedScroll, toString, transformMatrixToGlobal, transformMatrixToLocal, unscheduleDrawable, unscheduleDrawable, updateDragShadow, willNotCacheDrawing, willNotDraw
-
Field Details
-
mColorType
protected int mColorTypeColor type applied to this view.- See Also:
-
mLinkColorType
protected int mLinkColorTypeLink color 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. -
mLinkColor
Link color applied to this view. -
mAppliedLinkColor
Link 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. -
mAppearanceAttrRes
Original text appearance attribute resource. -
mColorAttrRes
Original text color attribute resource. -
mRtlSupport
protected boolean mRtlSupporttrue
if dynamic RTL support is enabled for this widget.
-
-
Constructor Details
-
DynamicTextView
-
DynamicTextView
-
DynamicTextView
public DynamicTextView(@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:
-
getLinkColorType
public int getLinkColorType()Description copied from interface:DynamicLinkWidget
Returns the link color type applied to this widget.- Specified by:
getLinkColorType
in interfaceDynamicLinkWidget
- Returns:
- The link color type applied to this widget.
- See Also:
-
setLinkColorType
public void setLinkColorType(int linkColorType) Description copied from interface:DynamicLinkWidget
Set the link color type to this widget.- Specified by:
setLinkColorType
in interfaceDynamicLinkWidget
- Parameters:
linkColorType
- Link 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.
-
getLinkColor
Description copied from interface:DynamicLinkWidget
Returns the value of link color applied to this widget.- Specified by:
getLinkColor
in interfaceDynamicLinkWidget
- Parameters:
resolve
-true
to resolve the link color applied to this widget.- Returns:
- The value of link color applied to this widget.
-
getLinkColor
Description copied from interface:DynamicLinkWidget
Returns the value of link color applied to this widget.- Specified by:
getLinkColor
in interfaceDynamicLinkWidget
- Returns:
- The value of link color applied to this widget.
-
setLinkColor
Description copied from interface:DynamicLinkWidget
Set the value of link color for this widget.- Specified by:
setLinkColor
in interfaceDynamicLinkWidget
- Parameters:
linkColor
- Link 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.
-
setEnabled
public void setEnabled(boolean enabled) Description copied from interface:DynamicWidget
Override this method to handle state changes for this widget.For example, change alpha according to the enabled or disabled state of this widget.
- Specified by:
setEnabled
in interfaceDynamicWidget
- Overrides:
setEnabled
in classTextView
- Parameters:
enabled
-true
if this widget is enabled and can receive click events.
-
setColor
public void setColor()Description copied from interface:DynamicWidget
Set color for this widget according to the supplied values.- Specified by:
setColor
in interfaceDynamicWidget
-
setLinkColor
public void setLinkColor()Description copied from interface:DynamicLinkWidget
Set link color for this widget according to the supplied values.Generally, it should be a tint color so that link will be visible on this widget background.
- Specified by:
setLinkColor
in interfaceDynamicLinkWidget
-
isRtlSupport
public boolean isRtlSupport()Description copied from interface:DynamicRtlWidget
Returns whether to enable dynamic RTL support for this widget.- Specified by:
isRtlSupport
in interfaceDynamicRtlWidget
- Returns:
true
if dynamic RTL support is enabled for this widget.
-
setRtlSupport
public void setRtlSupport(boolean rtlSupport) Description copied from interface:DynamicRtlWidget
Sets the dynamic RTL support for this widget.- Specified by:
setRtlSupport
in interfaceDynamicRtlWidget
- Parameters:
rtlSupport
-true
to enable the RTL support for this widget.
-