Class DynamicTabLayout
java.lang.Object
android.view.View
android.view.ViewGroup
android.widget.FrameLayout
android.widget.HorizontalScrollView
com.google.android.material.tabs.TabLayout
com.pranavpandey.android.dynamic.support.widget.DynamicTabLayout
- All Implemented Interfaces:
Drawable.Callback
,AccessibilityEventSource
,KeyEvent.Callback
,ViewManager
,ViewParent
,BaseWidget
,DynamicBackgroundWidget
,DynamicTextWidget
,DynamicWidget
public class DynamicTabLayout
extends TabLayout
implements DynamicBackgroundWidget, DynamicTextWidget
A
TabLayout
to apply DynamicTheme
according to the supplied parameters.-
Nested Class Summary
Nested classes/interfaces inherited from class com.google.android.material.tabs.TabLayout
TabLayout.BaseOnTabSelectedListener<T extends TabLayout.Tab>, TabLayout.LabelVisibility, TabLayout.Mode, TabLayout.OnTabSelectedListener, TabLayout.Tab, TabLayout.TabGravity, TabLayout.TabIndicatorAnimationMode, TabLayout.TabIndicatorGravity, TabLayout.TabLayoutOnPageChangeListener, TabLayout.TabView, TabLayout.ViewPagerOnTabSelectedListener
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
Text 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
Background color applied to this view.protected int
Color type applied to the background of this view.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 int
Text color applied to this view.protected int
Text color type applied to this view.Fields inherited from class com.google.android.material.tabs.TabLayout
GRAVITY_CENTER, GRAVITY_FILL, GRAVITY_START, INDICATOR_ANIMATION_MODE_ELASTIC, INDICATOR_ANIMATION_MODE_FADE, INDICATOR_ANIMATION_MODE_LINEAR, INDICATOR_GRAVITY_BOTTOM, INDICATOR_GRAVITY_CENTER, INDICATOR_GRAVITY_STRETCH, INDICATOR_GRAVITY_TOP, MODE_AUTO, MODE_FIXED, MODE_SCROLLABLE, TAB_LABEL_VISIBILITY_LABELED, TAB_LABEL_VISIBILITY_UNLABELED
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
ConstructorDescriptionDynamicTabLayout
(Context context) DynamicTabLayout
(Context context, AttributeSet attrs) DynamicTabLayout
(Context context, AttributeSet attrs, int defStyleAttr) -
Method Summary
Modifier and TypeMethodDescriptionint
Returns the background aware functionality used by this widget.int
Returns the value of background color applied to this widget.int
Returns the background color type applied to 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 text color applied to this widget.int
getTextColor
(boolean resolve) Returns the value of text color applied to this widget.int
Returns the text color type applied to this widget.void
Initialize this widget by setting color type.boolean
Checks whether the background aware functionality is enabled.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) Set the value of background color for this widget.void
setBackgroundColorType
(int backgroundColorType) Set the background color type to this widget.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 text color for this widget according to the supplied values.void
setTextColor
(int textColor) Set the value of text color for this widget.void
setTextColorType
(int textColorType) Set the text color type to this widget.void
setTextWidgetColor
(boolean setTextColor) Set color and text color for this widget at once.Methods inherited from class com.google.android.material.tabs.TabLayout
addOnTabSelectedListener, addOnTabSelectedListener, addTab, addTab, addTab, addTab, addView, addView, addView, addView, clearOnTabSelectedListeners, createTabFromPool, generateLayoutParams, getSelectedTabPosition, getTabAt, getTabCount, getTabGravity, getTabIconTint, getTabIndicatorAnimationMode, getTabIndicatorGravity, getTabMode, getTabRippleColor, getTabSelectedIndicator, getTabTextColors, hasUnboundedRipple, isInlineLabel, isTabIndicatorFullWidth, newTab, onAttachedToWindow, onDetachedFromWindow, onDraw, onInitializeAccessibilityNodeInfo, onInterceptTouchEvent, onMeasure, onTouchEvent, releaseFromTabPool, removeAllTabs, removeOnTabSelectedListener, removeOnTabSelectedListener, removeTab, removeTabAt, selectTab, selectTab, setElevation, setInlineLabel, setInlineLabelResource, setOnTabSelectedListener, setOnTabSelectedListener, setScrollPosition, setScrollPosition, setSelectedTabIndicator, setSelectedTabIndicator, setSelectedTabIndicatorColor, setSelectedTabIndicatorGravity, setSelectedTabIndicatorHeight, setTabGravity, setTabIconTint, setTabIconTintResource, setTabIndicatorAnimationMode, setTabIndicatorFullWidth, setTabMode, setTabRippleColor, setTabRippleColorResource, setTabsFromPagerAdapter, setTabTextColors, setTabTextColors, setUnboundedRipple, setUnboundedRippleResource, setupWithViewPager, setupWithViewPager, shouldDelayChildPressedState
Methods inherited from class android.widget.HorizontalScrollView
arrowScroll, computeHorizontalScrollOffset, computeHorizontalScrollRange, computeScroll, computeScrollDeltaToGetChildRectOnScreen, dispatchKeyEvent, draw, executeKeyEvent, fling, fullScroll, getAccessibilityClassName, getLeftEdgeEffectColor, getLeftFadingEdgeStrength, getMaxScrollAmount, getRightEdgeEffectColor, getRightFadingEdgeStrength, isFillViewport, isSmoothScrollingEnabled, measureChild, measureChildWithMargins, onGenericMotionEvent, onLayout, onOverScrolled, onRequestFocusInDescendants, onRestoreInstanceState, onSaveInstanceState, pageScroll, requestChildFocus, requestChildRectangleOnScreen, requestDisallowInterceptTouchEvent, requestLayout, scrollTo, setEdgeEffectColor, setFillViewport, setLeftEdgeEffectColor, setRightEdgeEffectColor, setSmoothScrollingEnabled, smoothScrollBy, smoothScrollTo
Methods inherited from class android.widget.FrameLayout
checkLayoutParams, generateDefaultLayoutParams, generateLayoutParams, getConsiderGoneChildrenWhenMeasuring, getMeasureAllChildren, setForegroundGravity, setMeasureAllChildren
Methods inherited from class android.view.ViewGroup
addChildrenForAccessibility, addExtraDataToAccessibilityNodeInfo, addFocusables, addKeyboardNavigationClusters, addStatesFromChildren, addTouchables, 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, 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, measureChildren, notifySubtreeAccessibilityStateChanged, offsetDescendantRectToMyCoords, offsetRectIntoDescendantCoords, onCreateDrawableState, onDescendantInvalidated, onInterceptHoverEvent, onNestedFling, onNestedPreFling, onNestedPrePerformAccessibilityAction, onNestedPreScroll, onNestedScroll, onNestedScrollAccepted, onRequestSendAccessibilityEvent, onResolvePointerIcon, onStartNestedScroll, onStopNestedScroll, onViewAdded, onViewRemoved, recomputeViewAttributes, removeAllViews, removeAllViewsInLayout, removeDetachedView, removeView, removeViewAt, removeViewInLayout, removeViews, removeViewsInLayout, 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, computeSystemWindowInsets, computeVerticalScrollExtent, computeVerticalScrollOffset, computeVerticalScrollRange, createAccessibilityNodeInfo, createContextMenu, destroyDrawingCache, dispatchGenericMotionEvent, dispatchNestedFling, dispatchNestedPreFling, dispatchNestedPrePerformAccessibilityAction, dispatchNestedPreScroll, dispatchNestedScroll, dispatchPopulateAccessibilityEvent, 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, 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, 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, onDrawForeground, onDrawScrollBars, onFilterTouchEventForSecurity, onFinishInflate, onFinishTemporaryDetach, onFocusChanged, onHoverChanged, onHoverEvent, onInitializeAccessibilityEvent, onKeyDown, onKeyLongPress, onKeyMultiple, onKeyPreIme, onKeyShortcut, onKeyUp, onPointerCaptureChange, onPopulateAccessibilityEvent, onProvideAutofillStructure, onProvideAutofillVirtualStructure, onProvideContentCaptureStructure, onProvideStructure, onProvideVirtualStructure, onReceiveContent, onRtlPropertiesChanged, onScreenStateChanged, onScrollCaptureSearch, onScrollChanged, onSetAlpha, onStartTemporaryDetach, 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, requestPointerCapture, requestRectangleOnScreen, requestRectangleOnScreen, requestUnbufferedDispatch, requestUnbufferedDispatch, requireViewById, resetPivot, resolveSize, resolveSizeAndState, restoreHierarchyState, saveAttributeDataForStyleable, saveHierarchyState, scheduleDrawable, scrollBy, sendAccessibilityEvent, sendAccessibilityEventUnchecked, setAccessibilityDataSensitive, setAccessibilityDelegate, setAccessibilityHeading, setAccessibilityLiveRegion, setAccessibilityPaneTitle, setAccessibilityTraversalAfter, setAccessibilityTraversalBefore, setActivated, setAllowClickWhenDisabled, setAllowedHandwritingDelegatePackage, setAllowedHandwritingDelegatorPackage, setAlpha, setAnimation, setAnimationMatrix, setAutofillHints, setAutofillId, setAutoHandwritingEnabled, setBackground, setBackgroundDrawable, setBackgroundResource, setBackgroundTintBlendMode, setBackgroundTintList, setBackgroundTintMode, setBottom, setCameraDistance, setClickable, setClipBounds, setClipToOutline, setContentCaptureSession, setContentDescription, setContentSensitivity, setContextClickable, setDefaultFocusHighlightEnabled, setDrawingCacheBackgroundColor, setDrawingCacheEnabled, setDrawingCacheQuality, setDuplicateParentStateEnabled, 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, 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, setPadding, setPaddingRelative, 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 android.view.ViewParent
canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, createContextMenu, getLayoutDirection, getParent, getParentForAccessibility, getTextAlignment, getTextDirection, isLayoutDirectionResolved, isLayoutRequested, isTextAlignmentResolved, isTextDirectionResolved, keyboardNavigationClusterSearch, requestFitSystemWindows
-
Field Details
-
mBackgroundColorType
protected int mBackgroundColorTypeColor type applied to the background of this view.- See Also:
-
mColorType
protected int mColorTypeColor type applied to this view.- See Also:
-
mTextColorType
protected int mTextColorTypeText 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. -
mBackgroundColor
Background color applied to this view. -
mColor
Color applied to this view. -
mAppliedColor
Color applied to this view after considering the background aware properties. -
mTextColor
Text color applied to this view. -
mAppliedTextColor
Text 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.
-
-
Constructor Details
-
DynamicTabLayout
-
DynamicTabLayout
-
DynamicTabLayout
public DynamicTabLayout(@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:
-
getBackgroundColorType
public int getBackgroundColorType()Description copied from interface:DynamicBackgroundWidget
Returns the background color type applied to this widget.- Specified by:
getBackgroundColorType
in interfaceDynamicBackgroundWidget
- Returns:
- The background color type applied to this widget.
- See Also:
-
setBackgroundColorType
public void setBackgroundColorType(int backgroundColorType) Description copied from interface:DynamicBackgroundWidget
Set the background color type to this widget.- Specified by:
setBackgroundColorType
in interfaceDynamicBackgroundWidget
- Parameters:
backgroundColorType
- Text color type for this widget.- 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:
-
getTextColorType
public int getTextColorType()Description copied from interface:DynamicTextWidget
Returns the text color type applied to this widget.- Specified by:
getTextColorType
in interfaceDynamicTextWidget
- Returns:
- The text color type applied to this widget.
- See Also:
-
setTextColorType
public void setTextColorType(int textColorType) Description copied from interface:DynamicTextWidget
Set the text color type to this widget.- Specified by:
setTextColorType
in interfaceDynamicTextWidget
- Parameters:
textColorType
- Text 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:
-
getBackgroundColor
Description copied from interface:DynamicBackgroundWidget
Returns the value of background color applied to this widget.- Specified by:
getBackgroundColor
in interfaceDynamicBackgroundWidget
- Returns:
- The value of background 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
- 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.
-
getTextColor
Description copied from interface:DynamicTextWidget
Returns the value of text color applied to this widget.- Specified by:
getTextColor
in interfaceDynamicTextWidget
- Parameters:
resolve
-true
to resolve the text color applied to this widget.- Returns:
- The value of text color applied to this widget.
-
getTextColor
Description copied from interface:DynamicTextWidget
Returns the value of text color applied to this widget.- Specified by:
getTextColor
in interfaceDynamicTextWidget
- Returns:
- The value of text color applied to this widget.
-
setTextColor
Description copied from interface:DynamicTextWidget
Set the value of text color for this widget.- Specified by:
setTextColor
in interfaceDynamicTextWidget
- Parameters:
textColor
- Text 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.
-
onSizeChanged
protected void onSizeChanged(int w, int h, int oldw, int oldh) - Overrides:
onSizeChanged
in classHorizontalScrollView
-
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 classView
- Parameters:
enabled
-true
if this widget is enabled and can receive click events.
-
setBackgroundColor
Description copied from interface:DynamicBackgroundWidget
Set the value of background color for this widget.- Specified by:
setBackgroundColor
in interfaceDynamicBackgroundWidget
- Overrides:
setBackgroundColor
in classView
- Parameters:
color
- Background color for this widget.
-
setColor
public void setColor()Description copied from interface:DynamicWidget
Set color for this widget according to the supplied values.- Specified by:
setColor
in interfaceDynamicWidget
-
setTextColor
public void setTextColor()Description copied from interface:DynamicTextWidget
Set text color for this widget according to the supplied values.Generally, it should be a tint color so that text will be visible on this widget background.
- Specified by:
setTextColor
in interfaceDynamicTextWidget
-
setTextWidgetColor
public void setTextWidgetColor(boolean setTextColor) Description copied from interface:DynamicTextWidget
Set color and text color for this widget at once.- Specified by:
setTextWidgetColor
in interfaceDynamicTextWidget
- Parameters:
setTextColor
-true
to set the text color also.
-