Package | feathers.controls |
Class | public class Scroller |
Inheritance | Scroller ![]() ![]() |
Implements | IFocusDisplayObject |
Subclasses | GroupedList, List, ScrollContainer, ScrollText, TextArea |
ScrollContainer
. To scroll long
passages of text, see ScrollText
.
This component is generally not instantiated directly. Instead it is typically used as a super class for other scrolling components like lists and containers. With that in mind, no code example is included here.
See also
Property | Defined By | ||
---|---|---|---|
autoHideBackground : Boolean
If true, the background's visible property
will be set to false when the scroll position is greater
than or equal to the minimum scroll position and less than or equal
to the maximum scroll position. | Scroller | ||
backgroundDisabledSkin : DisplayObject
A background to display when the container is disabled. | Scroller | ||
backgroundSkin : DisplayObject
The default background to display. | Scroller | ||
clipContent : Boolean
If true, the viewport will be clipped to the scroller's bounds. | Scroller | ||
customHorizontalScrollBarName : String
DEPRECATED: Replaced by customHorizontalScrollBarName. | Scroller | ||
customHorizontalScrollBarStyleName : String
A style name to add to the container's horizontal scroll bar
sub-component. | Scroller | ||
customVerticalScrollBarName : String
DEPRECATED: Replaced by customVerticalScrollBarStyleName. | Scroller | ||
customVerticalScrollBarStyleName : String
A style name to add to the container's vertical scroll bar
sub-component. | Scroller | ||
decelerationRate : Number
This value is used to decelerate the scroller when "thrown". | Scroller | ||
![]() | defaultTextEditorFactory : Function [static]
A function used by all UI controls that support text editor to
create an ITextEditor instance. | FeathersControl | |
![]() | defaultTextRendererFactory : Function [static]
A function used by all UI controls that support text renderers to
create an ITextRenderer instance. | FeathersControl | |
![]() | depth : int [read-only]
The component's depth in the display list, relative to the stage. | FeathersControl | |
elasticity : Number
If the scroll position goes outside the minimum or maximum bounds
when the scroller's content is being actively dragged, the scrolling
will be constrained using this multiplier. | Scroller | ||
elasticSnapDuration : Number
The duration, in seconds, of the animation when a the scroller snaps
back to the minimum or maximum position after going out of bounds. | Scroller | ||
![]() | focusIndicatorSkin : DisplayObject
If this component supports focus, this optional skin will be
displayed above the component when showFocus() is
called. | FeathersControl | |
![]() | focusManager : IFocusManager | FeathersControl | |
![]() | focusOwner : IFocusDisplayObject | FeathersControl | |
![]() | focusPadding : Number
Quickly sets all focus padding properties to the same value. | FeathersControl | |
![]() | focusPaddingBottom : Number
The minimum space, in pixels, between the object's bottom edge and the
bottom edge of the focus indicator skin. | FeathersControl | |
![]() | focusPaddingLeft : Number
The minimum space, in pixels, between the object's left edge and the
left edge of the focus indicator skin. | FeathersControl | |
![]() | focusPaddingRight : Number
The minimum space, in pixels, between the object's right edge and the
right edge of the focus indicator skin. | FeathersControl | |
![]() | focusPaddingTop : Number
The minimum space, in pixels, between the object's top edge and the
top edge of the focus indicator skin. | FeathersControl | |
hasElasticEdges : Boolean
Determines if the scrolling can go beyond the edges of the viewport. | Scroller | ||
![]() | height : Number [override]
The height of the component, in pixels. | FeathersControl | |
hideScrollBarAnimationDuration : Number
The duration, in seconds, of the animation when a scroll bar fades
out. | Scroller | ||
hideScrollBarAnimationEase : Object
The easing function used for hiding the scroll bars, if applicable. | Scroller | ||
horizontalPageCount : int [read-only]
The number of horizontal pages, if snapping is enabled. | Scroller | ||
horizontalPageIndex : int [read-only]
The index of the horizontal page, if snapping is enabled. | Scroller | ||
horizontalScrollBarFactory : Function
Creates the horizontal scroll bar. | Scroller | ||
horizontalScrollBarProperties : Object
An object that stores properties for the container's horizontal
scroll bar, and the properties will be passed down to the horizontal
scroll bar when the container validates. | Scroller | ||
horizontalScrollPolicy : String
Determines whether the scroller may scroll horizontally (on the
x-axis) or not. | Scroller | ||
horizontalScrollPosition : Number
The number of pixels the container has been scrolled horizontally (on
the x-axis). | Scroller | ||
horizontalScrollStep : Number
The number of pixels the horizontal scroll position can be adjusted
by a "step". | Scroller | ||
![]() | includeInLayout : Boolean
Determines if the ILayout should use this object or ignore it. | FeathersControl | |
interactionMode : String
Determines how the user may interact with the scroller. | Scroller | ||
![]() | isCreated : Boolean [read-only]
Determines if the component has been initialized and validated for
the first time. | FeathersControl | |
![]() | isEnabled : Boolean
Indicates whether the control is interactive or not. | FeathersControl | |
![]() | isFocusEnabled : Boolean | FeathersControl | |
![]() | isInitialized : Boolean [read-only]
Determines if the component has been initialized yet. | FeathersControl | |
![]() | isQuickHitAreaEnabled : Boolean
Similar to mouseChildren on the classic display list. | FeathersControl | |
isScrolling : Boolean [read-only]
Determines if the scroller is currently scrolling with user
interaction or with animation. | Scroller | ||
![]() | layoutData : ILayoutData
Extra parameters associated with this display object that will be
used by the layout algorithm. | FeathersControl | |
![]() | maxHeight : Number
The maximum recommended height to be used for self-measurement and,
optionally, by any code that is resizing this component. | FeathersControl | |
maxHorizontalPageIndex : int [read-only]
The maximum horizontal page index that may be displayed by this
container, if page snapping is enabled. | Scroller | ||
maxHorizontalScrollPosition : Number [read-only]
The number of pixels the scroller may be scrolled horizontally to the
right. | Scroller | ||
maxVerticalPageIndex : int [read-only]
The maximum vertical page index that may be displayed by this
container, if page snapping is enabled. | Scroller | ||
maxVerticalScrollPosition : Number [read-only]
The number of pixels the scroller may be scrolled vertically beyond
the bottom edge. | Scroller | ||
![]() | maxWidth : Number
The maximum recommended width to be used for self-measurement and,
optionally, by any code that is resizing this component. | FeathersControl | |
measureViewPort : Boolean
Determines if the dimensions of the view port are used when measuring
the scroller. | Scroller | ||
![]() | minHeight : Number
The minimum recommended height to be used for self-measurement and,
optionally, by any code that is resizing this component. | FeathersControl | |
minHorizontalPageIndex : int [read-only]
The minimum horizontal page index that may be displayed by this
container, if page snapping is enabled. | Scroller | ||
minHorizontalScrollPosition : Number [read-only]
The number of pixels the scroller may be scrolled horizontally to the
left. | Scroller | ||
minimumDragDistance : Number
The minimum physical distance (in inches) that a touch must move
before the scroller starts scrolling. | Scroller | ||
minimumPageThrowVelocity : Number
The minimum physical velocity (in inches per second) that a touch
must move before the scroller will "throw" to the next page. | Scroller | ||
![]() | minTouchHeight : Number
If using isQuickHitAreaEnabled, and the hit area's
height is smaller than this value, it will be expanded. | FeathersControl | |
![]() | minTouchWidth : Number
If using isQuickHitAreaEnabled, and the hit area's
width is smaller than this value, it will be expanded. | FeathersControl | |
minVerticalPageIndex : int [read-only]
The minimum vertical page index that may be displayed by this
container, if page snapping is enabled. | Scroller | ||
minVerticalScrollPosition : Number [read-only]
The number of pixels the scroller may be scrolled vertically beyond
the top edge. | Scroller | ||
![]() | minWidth : Number
The minimum recommended width to be used for self-measurement and,
optionally, by any code that is resizing this component. | FeathersControl | |
mouseWheelScrollDuration : Number
The duration, in seconds, of the animation when the mouse wheel
initiates a scroll action. | Scroller | ||
![]() | nextTabFocus : IFocusDisplayObject | FeathersControl | |
padding : Number
Quickly sets all padding properties to the same value. | Scroller | ||
paddingBottom : Number
The minimum space, in pixels, between the container's bottom edge and
the container's content. | Scroller | ||
paddingLeft : Number
The minimum space, in pixels, between the container's left edge and the
container's content. | Scroller | ||
paddingRight : Number
The minimum space, in pixels, between the container's right edge and
the container's content. | Scroller | ||
paddingTop : Number
The minimum space, in pixels, between the container's top edge and the
container's content. | Scroller | ||
pageHeight : Number
When set, the vertical pages snap to this height value instead of
the height of the scroller. | Scroller | ||
pageThrowDuration : Number
The duration, in seconds, of the animation when the scroller is
thrown to a page. | Scroller | ||
pageWidth : Number
When set, the horizontal pages snap to this width value instead of
the width of the scroller. | Scroller | ||
![]() | previousTabFocus : IFocusDisplayObject | FeathersControl | |
revealScrollBarsDuration : Number
The duration, in seconds, that the scroll bars will be shown when
calling revealScrollBars()
| Scroller | ||
scrollBarDisplayMode : String
Determines how the scroll bars are displayed. | Scroller | ||
snapScrollPositionsToPixels : Boolean
If enabled, the scroll position will always be adjusted to whole
pixels. | Scroller | ||
snapToPages : Boolean
Determines if scrolling will snap to the nearest page. | Scroller | ||
![]() | styleName : String
The concatenated styleNameList, with values separated
by spaces. | FeathersControl | |
![]() | styleNameList : TokenList [read-only]
Contains a list of all "styles" assigned to this control. | FeathersControl | |
![]() | styleProvider : IStyleProvider
When a component initializes, a style provider may be used to set
properties that affect the component's visual appearance. | FeathersControl | |
throwEase : Object
The easing function used for "throw" animations. | Scroller | ||
throwElasticity : Number
If the scroll position goes outside the minimum or maximum bounds
when the scroller's content is "thrown", the scrolling will be
constrained using this multiplier. | Scroller | ||
useFixedThrowDuration : Boolean
If true, the duration of a "throw" animation will be the
same no matter the value of the throw's initial velocity. | Scroller | ||
verticalMouseWheelScrollDirection : String
The direction of scrolling when the user scrolls the mouse wheel
vertically. | Scroller | ||
verticalMouseWheelScrollStep : Number
The number of pixels the vertical scroll position can be adjusted by
a "step" when using the mouse wheel. | Scroller | ||
verticalPageCount : int [read-only]
The number of vertical pages, if snapping is enabled. | Scroller | ||
verticalPageIndex : int [read-only]
The index of the vertical page, if snapping is enabled. | Scroller | ||
verticalScrollBarFactory : Function
Creates the vertical scroll bar. | Scroller | ||
verticalScrollBarPosition : String
Determines where the vertical scroll bar will be positioned. | Scroller | ||
verticalScrollBarProperties : Object
An object that stores properties for the container's vertical scroll
bar, and the properties will be passed down to the vertical scroll
bar when the container validates. | Scroller | ||
verticalScrollPolicy : String
Determines whether the scroller may scroll vertically (on the
y-axis) or not. | Scroller | ||
verticalScrollPosition : Number
The number of pixels the container has been scrolled vertically (on
the y-axis). | Scroller | ||
verticalScrollStep : Number
The number of pixels the vertical scroll position can be adjusted
by a "step". | Scroller | ||
viewPort : IViewPort
The display object displayed and scrolled within the Scroller. | Scroller | ||
![]() | width : Number [override]
The width of the component, in pixels. | FeathersControl |
Property | Defined By | ||
---|---|---|---|
![]() | actualHeight : Number = 0
The final height value that should be used for layout. | FeathersControl | |
![]() | actualWidth : Number = 0
The final width value that should be used for layout. | FeathersControl | |
![]() | defaultStyleProvider : IStyleProvider [read-only]
When the FeathersControl constructor is called, the
globalStyleProvider property is set to this value. | FeathersControl | |
![]() | explicitHeight : Number = NaN
The height value explicitly set by calling the height setter or
setSize(). | FeathersControl | |
![]() | explicitWidth : Number = NaN
The width value explicitly set by calling the width setter or
setSize(). | FeathersControl | |
hasPendingHorizontalPageIndex : Boolean = false
A flag that indicates if the scroller should scroll to a new page
when it validates. | Scroller | ||
hasPendingVerticalPageIndex : Boolean = false
A flag that indicates if the scroller should scroll to a new page
when it validates. | Scroller | ||
horizontalScrollBar : IScrollBar
The horizontal scrollbar instance. | Scroller | ||
horizontalScrollBarName : String
DEPRECATED: Replaced by horizontalScrollBarStyleName. | Scroller | ||
horizontalScrollBarStyleName : String = feathers-scroller-horizontal-scroll-bar
The value added to the styleNameList of the horizontal
scroll bar. | Scroller | ||
pendingHorizontalPageIndex : int
The pending horizontal page index to scroll to after validating. | Scroller | ||
pendingHorizontalScrollPosition : Number = NaN
The pending horizontal scroll position to scroll to after validating. | Scroller | ||
pendingScrollDuration : Number
The duration of the pending scroll action. | Scroller | ||
pendingVerticalPageIndex : int
The pending vertical page index to scroll to after validating. | Scroller | ||
pendingVerticalScrollPosition : Number = NaN
The pending vertical scroll position to scroll to after validating. | Scroller | ||
verticalScrollBar : IScrollBar
The vertical scrollbar instance. | Scroller | ||
verticalScrollBarName : String
DEPRECATED: Replaced by verticalScrollBarStyleName. | Scroller | ||
verticalScrollBarStyleName : String = feathers-scroller-vertical-scroll-bar
The value added to the styleNameList of the vertical
scroll bar. | Scroller |
Method | Defined By | ||
---|---|---|---|
Scroller()
Constructor. | Scroller | ||
![]() | hideFocus():void
If the visual indicator of focus has been displayed by
showFocus(), call this function to hide it. | FeathersControl | |
![]() | invalidate(flag:String):void
Call this function to tell the UI control that a redraw is pending. | FeathersControl | |
![]() | isInvalid(flag:String = null):Boolean
Indicates whether the control is pending validation or not. | FeathersControl | |
![]() | move(x:Number, y:Number):void
Sets both the x and the y positions of the control in a single
function call. | FeathersControl | |
revealScrollBars():void
If the scroll bars are floating, briefly show them as a hint to the
user. | Scroller | ||
scrollToPageIndex(horizontalPageIndex:int, verticalPageIndex:int, animationDuration:Number):void
After the next validation, animates the scroll position to a specific
page index. | Scroller | ||
scrollToPosition(horizontalScrollPosition:Number, verticalScrollPosition:Number, animationDuration:Number):void
After the next validation, animates the scroll positions to a
specific location. | Scroller | ||
![]() | setSize(width:Number, height:Number):void
Sets both the width and the height of the control in a single
function call. | FeathersControl | |
![]() | showFocus():void
If the object has focus, an additional visual indicator may
optionally be displayed to highlight the object. | FeathersControl | |
stopScrolling():void
If the user is scrolling with touch or if the scrolling is animated,
calling stopScrolling() will cause the scroller to ignore the drag
and stop animations. | Scroller | ||
![]() | validate():void
Immediately validates the display object, if it is invalid. | FeathersControl |
Method | Defined By | ||
---|---|---|---|
autoSizeIfNeeded():Boolean
If the component's dimensions have not been set explicitly, it will
measure its content and determine an ideal size for itself. | Scroller | ||
![]() | clearInvalidationFlag(flag:String):void
Clears an invalidation flag. | FeathersControl | |
completeScroll():void
Prepares the scroller for normal interaction and dispatches
FeathersEventType.SCROLL_COMPLETE. | Scroller | ||
createScrollBars():void
Creates and adds the horizontalScrollBar and
verticalScrollBar sub-components and removes the old
instances, if they exist. | Scroller | ||
![]() | draw():void
Override to customize layout and to adjust properties of children. | FeathersControl | |
![]() | focusInHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_IN
that may be overridden in subclasses to perform additional actions
when the component receives focus. | FeathersControl | |
![]() | focusOutHandler(event:Event):void
Default event handler for FeathersEventType.FOCUS_OUT
that may be overridden in subclasses to perform additional actions
when the component loses focus. | FeathersControl | |
handlePendingScroll():void
Scrolls to a pending scroll position, if required. | Scroller | ||
![]() | initialize():void
Called the first time that the UI control is added to the stage, and
you should override this function to customize the initialization
process. | FeathersControl | |
layoutChildren():void
Positions and sizes children based on the actual width and height
values. | Scroller | ||
refreshBackgroundSkin():void
Choose the appropriate background skin based on the control's current
state. | Scroller | ||
![]() | refreshFocusIndicator():void
Updates the focus indicator skin by showing or hiding it and
adjusting its position and dimensions. | FeathersControl | |
![]() | setInvalidationFlag(flag:String):void
Sets an invalidation flag. | FeathersControl | |
![]() | setSizeInternal(width:Number, height:Number, canInvalidate:Boolean):Boolean
Sets the width and height of the control, with the option of
invalidating or not. | FeathersControl | |
startScroll():void
If scrolling hasn't already started, prepares the scroller to scroll
and dispatches FeathersEventType.SCROLL_START. | Scroller | ||
throwTo(targetHorizontalScrollPosition:Number, targetVerticalScrollPosition:Number, duration:Number = 0.5):void
Immediately throws the scroller to the specified position, with
optional animation. | Scroller | ||
throwToPage(targetHorizontalPageIndex:int, targetVerticalPageIndex:int, duration:Number = 0.5):void
Immediately throws the scroller to the specified page index, with
optional animation. | Scroller |
Event | Summary | Defined By | ||
---|---|---|---|---|
Dispatched when the user starts dragging the scroller when INTERACTION_MODE_TOUCH is enabled or when the user starts interacting with the scroll bar. | Scroller | |||
![]() | Dispatched after the component has validated for the first time. | FeathersControl | ||
Dispatched when the user stops dragging the scroller when INTERACTION_MODE_TOUCH is enabled or when the user stops interacting with the scroll bar. | Scroller | |||
Dispatched when the component receives focus. | Scroller | |||
Dispatched when the component loses focus. | Scroller | |||
![]() | Dispatched after initialize() has been called, but before the first time that draw() has been called. | FeathersControl | ||
![]() | Dispatched when the width or height of the control changes. | FeathersControl | ||
Dispatched when the scroller scrolls in either direction or when the view port's scrolling bounds have changed. | Scroller | |||
Dispatched when the scroller finishes scrolling in either direction as a result of either user interaction or animation. | Scroller | |||
Dispatched when the scroller starts scrolling in either direction as a result of either user interaction or animation. | Scroller |
Constant | Defined By | ||
---|---|---|---|
DECELERATION_RATE_FAST : Number = 0.99 [static]
Decelerates a bit faster per millisecond than the default. | Scroller | ||
DECELERATION_RATE_NORMAL : Number = 0.998 [static]
The default deceleration rate per millisecond. | Scroller | ||
DEFAULT_CHILD_NAME_HORIZONTAL_SCROLL_BAR : String = feathers-scroller-horizontal-scroll-bar [static]
DEPRECATED: Replaced by Scroller.DEFAULT_CHILD_STYLE_NAME_HORIZONTAL_SCROLL_BAR. | Scroller | ||
DEFAULT_CHILD_NAME_VERTICAL_SCROLL_BAR : String = feathers-scroller-vertical-scroll-bar [static]
DEPRECATED: Replaced by Scroller.DEFAULT_CHILD_STYLE_NAME_VERTICAL_SCROLL_BAR. | Scroller | ||
DEFAULT_CHILD_STYLE_NAME_HORIZONTAL_SCROLL_BAR : String = feathers-scroller-horizontal-scroll-bar [static]
The default value added to the styleNameList of the
horizontal scroll bar. | Scroller | ||
DEFAULT_CHILD_STYLE_NAME_VERTICAL_SCROLL_BAR : String = feathers-scroller-vertical-scroll-bar [static]
The default value added to the styleNameList of the vertical
scroll bar. | Scroller | ||
INTERACTION_MODE_MOUSE : String = mouse [static]
The user may only interact with the scroll bars to scroll. | Scroller | ||
INTERACTION_MODE_TOUCH : String = touch [static]
The user may touch anywhere on the scroller and drag to scroll. | Scroller | ||
INTERACTION_MODE_TOUCH_AND_SCROLL_BARS : String = touchAndScrollBars [static]
The user may touch anywhere on the scroller and drag to scroll, and
the scroll bars may be dragged separately. | Scroller | ||
![]() | INVALIDATION_FLAG_ALL : String = all [static]
Flag to indicate that everything is invalid and should be redrawn. | FeathersControl | |
![]() | INVALIDATION_FLAG_DATA : String = data [static]
Invalidation flag to indicate that the primary data displayed by the
UI control has changed. | FeathersControl | |
![]() | INVALIDATION_FLAG_FOCUS : String = focus [static]
Invalidation flag to indicate that the focus of the UI control has
changed. | FeathersControl | |
![]() | INVALIDATION_FLAG_LAYOUT : String = layout [static]
Invalidation flag to indicate that the layout of the UI control has
changed. | FeathersControl | |
![]() | INVALIDATION_FLAG_SCROLL : String = scroll [static]
Invalidation flag to indicate that the scroll position of the UI
control has changed. | FeathersControl | |
![]() | INVALIDATION_FLAG_SELECTED : String = selected [static]
Invalidation flag to indicate that the selection of the UI control
has changed. | FeathersControl | |
![]() | INVALIDATION_FLAG_SIZE : String = size [static]
Invalidation flag to indicate that the dimensions of the UI control
have changed. | FeathersControl | |
![]() | INVALIDATION_FLAG_SKIN : String = skin [static]
Invalidation flag to indicate that the skin of the UI control has changed. | FeathersControl | |
![]() | INVALIDATION_FLAG_STATE : String = state [static]
Invalidation flag to indicate that the state has changed. | FeathersControl | |
![]() | INVALIDATION_FLAG_STYLES : String = styles [static]
Invalidation flag to indicate that the styles or visual appearance of
the UI control has changed. | FeathersControl | |
MOUSE_WHEEL_SCROLL_DIRECTION_HORIZONTAL : String = horizontal [static]
The scroller will scroll horizontally when the mouse wheel is scrolled. | Scroller | ||
MOUSE_WHEEL_SCROLL_DIRECTION_VERTICAL : String = vertical [static]
The scroller will scroll vertically when the mouse wheel is scrolled. | Scroller | ||
SCROLL_BAR_DISPLAY_MODE_FIXED : String = fixed [static]
The scroll bars are always visible and appear next to the scroller's
view port, making the view port smaller than the scroller. | Scroller | ||
SCROLL_BAR_DISPLAY_MODE_FIXED_FLOAT : String = fixedFloat [static]
The scroll bars appear above the scroller's view port, overlapping
the content, but they do not fade out when not in use. | Scroller | ||
SCROLL_BAR_DISPLAY_MODE_FLOAT : String = float [static]
The scroll bars appear above the scroller's view port, overlapping
the content, and they fade out when not in use. | Scroller | ||
SCROLL_BAR_DISPLAY_MODE_NONE : String = none [static]
The scroll bars are never visible. | Scroller | ||
SCROLL_POLICY_AUTO : String = auto [static]
The scroller may scroll if the view port is larger than the
scroller's bounds. | Scroller | ||
SCROLL_POLICY_OFF : String = off [static]
The scroller does not scroll at all. | Scroller | ||
SCROLL_POLICY_ON : String = on [static]
The scroller will always scroll. | Scroller | ||
VERTICAL_SCROLL_BAR_POSITION_LEFT : String = left [static]
The vertical scroll bar will be positioned on the left. | Scroller | ||
VERTICAL_SCROLL_BAR_POSITION_RIGHT : String = right [static]
The vertical scroll bar will be positioned on the right. | Scroller |
Constant | Defined By | ||
---|---|---|---|
INVALIDATION_FLAG_CLIPPING : String = clipping [static]
Flag to indicate that the clipping has changed. | Scroller |
autoHideBackground | property |
autoHideBackground:Boolean
If true
, the background's visible
property
will be set to false
when the scroll position is greater
than or equal to the minimum scroll position and less than or equal
to the maximum scroll position. The background will be visible when
the content is extended beyond the scrolling bounds, such as when
hasElasticEdges
is true
.
If the content is not fully opaque, this setting should not be enabled.
This setting may be enabled to potentially improve performance.
In the following example, the background is automatically hidden:
scroller.autoHideBackground = true;
The default value is false
.
public function get autoHideBackground():Boolean
public function set autoHideBackground(value:Boolean):void
backgroundDisabledSkin | property |
backgroundDisabledSkin:DisplayObject
A background to display when the container is disabled.
In the following example, the scroller is given a disabled background skin:
scroller.backgroundDisabledSkin = new Image( texture );
The default value is null
.
public function get backgroundDisabledSkin():DisplayObject
public function set backgroundDisabledSkin(value:DisplayObject):void
backgroundSkin | property |
backgroundSkin:DisplayObject
The default background to display.
In the following example, the scroller is given a background skin:
scroller.backgroundSkin = new Image( texture );
The default value is null
.
public function get backgroundSkin():DisplayObject
public function set backgroundSkin(value:DisplayObject):void
clipContent | property |
clipContent:Boolean
If true, the viewport will be clipped to the scroller's bounds. In other words, anything appearing outside the scroller's bounds will not be visible.
To improve performance, turn off clipping and place other display objects over the edges of the scroller to hide the content that bleeds outside of the scroller's bounds.
In the following example, clipping is disabled:
scroller.clipContent = false;
The default value is true
.
public function get clipContent():Boolean
public function set clipContent(value:Boolean):void
customHorizontalScrollBarName | property |
customHorizontalScrollBarName:String
DEPRECATED: Replaced by customHorizontalScrollBarName
.
DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.
public function get customHorizontalScrollBarName():String
public function set customHorizontalScrollBarName(value:String):void
See also
customHorizontalScrollBarStyleName | property |
customHorizontalScrollBarStyleName:String
A style name to add to the container's horizontal scroll bar sub-component. Typically used by a theme to provide different styles to different containers.
In the following example, a custom horizontal scroll bar style name is passed to the scroller:
scroller.customHorizontalScrollBarStyleName = "my-custom-horizontal-scroll-bar";
In your theme, you can target this sub-component style name to provide different styles than the default:
getStyleProviderForClass( SimpleScrollBar ).setFunctionForStyleName( "my-custom-horizontal-scroll-bar", setCustomHorizontalScrollBarStyles );
The default value is null
.
public function get customHorizontalScrollBarStyleName():String
public function set customHorizontalScrollBarStyleName(value:String):void
See also
customVerticalScrollBarName | property |
customVerticalScrollBarName:String
DEPRECATED: Replaced by customVerticalScrollBarStyleName
.
DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.
public function get customVerticalScrollBarName():String
public function set customVerticalScrollBarName(value:String):void
See also
customVerticalScrollBarStyleName | property |
customVerticalScrollBarStyleName:String
A style name to add to the container's vertical scroll bar sub-component. Typically used by a theme to provide different styles to different containers.
In the following example, a custom vertical scroll bar style name is passed to the scroller:
scroller.customVerticalScrollBarStyleName = "my-custom-vertical-scroll-bar";
In your theme, you can target this sub-component style name to provide different styles than the default:
getStyleProviderForClass( SimpleScrollBar ).setFunctionForStyleName( "my-custom-vertical-scroll-bar", setCustomVerticalScrollBarStyles );
The default value is null
.
public function get customVerticalScrollBarStyleName():String
public function set customVerticalScrollBarStyleName(value:String):void
See also
decelerationRate | property |
decelerationRate:Number
This value is used to decelerate the scroller when "thrown". The
velocity of a throw is multiplied by this value once per millisecond
to decelerate. A value greater than 0
and less than
1
is expected.
In the following example, deceleration rate is lowered to adjust the behavior of a throw:
scroller.decelerationRate = Scroller.DECELERATION_RATE_FAST;
The default value is Scroller.DECELERATION_RATE_NORMAL
.
public function get decelerationRate():Number
public function set decelerationRate(value:Number):void
See also
elasticity | property |
elasticity:Number
If the scroll position goes outside the minimum or maximum bounds
when the scroller's content is being actively dragged, the scrolling
will be constrained using this multiplier. A value of 0
means that the scroller will not go beyond its minimum or maximum
bounds. A value of 1
means that going beyond the minimum
or maximum bounds is completely unrestrained.
In the following example, the elasticity of dragging beyond the scroller's edges is customized:
scroller.elasticity = 0.5;
The default value is 0.33
.
public function get elasticity():Number
public function set elasticity(value:Number):void
See also
elasticSnapDuration | property |
elasticSnapDuration:Number
The duration, in seconds, of the animation when a the scroller snaps back to the minimum or maximum position after going out of bounds.
In the following example, the duration of the animation that snaps the content back after pulling it beyond the edge is set to 750 milliseconds:
scroller.elasticSnapDuration = 0.75;
The default value is 0.5
.
public function get elasticSnapDuration():Number
public function set elasticSnapDuration(value:Number):void
hasElasticEdges | property |
hasElasticEdges:Boolean
Determines if the scrolling can go beyond the edges of the viewport.
In the following example, elastic edges are disabled:
scroller.hasElasticEdges = false;
The default value is true
.
public function get hasElasticEdges():Boolean
public function set hasElasticEdges(value:Boolean):void
See also
hasPendingHorizontalPageIndex | property |
protected var hasPendingHorizontalPageIndex:Boolean = false
A flag that indicates if the scroller should scroll to a new page
when it validates. If true
, it will use the value of
pendingHorizontalPageIndex
as the target page index.
See also
hasPendingVerticalPageIndex | property |
protected var hasPendingVerticalPageIndex:Boolean = false
A flag that indicates if the scroller should scroll to a new page
when it validates. If true
, it will use the value of
pendingVerticalPageIndex
as the target page index.
See also
hideScrollBarAnimationDuration | property |
hideScrollBarAnimationDuration:Number
The duration, in seconds, of the animation when a scroll bar fades out.
In the following example, the duration of the animation that hides the scroll bars is set to 500 milliseconds:
scroller.hideScrollBarAnimationDuration = 0.5;
The default value is 0.2
.
public function get hideScrollBarAnimationDuration():Number
public function set hideScrollBarAnimationDuration(value:Number):void
hideScrollBarAnimationEase | property |
hideScrollBarAnimationEase:Object
The easing function used for hiding the scroll bars, if applicable.
In the following example, the ease of the animation that hides the scroll bars is customized:
scroller.hideScrollBarAnimationEase = Transitions.EASE_IN_OUT;
The default value is starling.animation.Transitions.EASE_OUT
.
public function get hideScrollBarAnimationEase():Object
public function set hideScrollBarAnimationEase(value:Object):void
See also
horizontalPageCount | property |
horizontalPageCount:int
[read-only]
The number of horizontal pages, if snapping is enabled. If snapping
is disabled, the page count will always be 1
.
If the scroller's view port supports infinite scrolling, this
property will return int.MAX_VALUE
, since an
int
cannot hold the value Number.POSITIVE_INFINITY
.
public function get horizontalPageCount():int
See also
horizontalPageIndex | property |
horizontalPageIndex:int
[read-only]
The index of the horizontal page, if snapping is enabled. If snapping
is disabled, the index will always be 0
.
public function get horizontalPageIndex():int
See also
horizontalScrollBar | property |
protected var horizontalScrollBar:IScrollBar
The horizontal scrollbar instance. May be null.
For internal use in subclasses.
See also
horizontalScrollBarFactory | property |
horizontalScrollBarFactory:Function
Creates the horizontal scroll bar. The horizontal scroll bar must be
an instance of IScrollBar
. This factory can be used to
change properties on the horizontal scroll bar when it is first
created. For instance, if you are skinning Feathers components
without a theme, you might use this factory to set skins and other
styles on the horizontal scroll bar.
This function is expected to have the following signature:
function():IScrollBar
In the following example, a custom horizontal scroll bar factory is passed to the scroller:
scroller.horizontalScrollBarFactory = function():IScrollBar { return new ScrollBar(); };
The default value is null
.
public function get horizontalScrollBarFactory():Function
public function set horizontalScrollBarFactory(value:Function):void
See also
horizontalScrollBarName | property |
horizontalScrollBarName:String
DEPRECATED: Replaced by horizontalScrollBarStyleName
.
DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.
protected function get horizontalScrollBarName():String
protected function set horizontalScrollBarName(value:String):void
See also
horizontalScrollBarProperties | property |
horizontalScrollBarProperties:Object
An object that stores properties for the container's horizontal
scroll bar, and the properties will be passed down to the horizontal
scroll bar when the container validates. The available properties
depend on which IScrollBar
implementation is returned
by horizontalScrollBarFactory
. Refer to
feathers.controls.IScrollBar
for a list of available scroll bar implementations.
If the subcomponent has its own subcomponents, their properties
can be set too, using attribute @
notation. For example,
to set the skin on the thumb which is in a SimpleScrollBar
,
which is in a List
, you can use the following syntax:
list.verticalScrollBarProperties.@thumbProperties.defaultSkin = new Image(texture);
Setting properties in a horizontalScrollBarFactory
function instead of using horizontalScrollBarProperties
will result in better performance.
In the following example, properties for the horizontal scroll bar are passed to the scroller:
scroller.horizontalScrollBarProperties.liveDragging = false;
The default value is null
.
public function get horizontalScrollBarProperties():Object
public function set horizontalScrollBarProperties(value:Object):void
See also
horizontalScrollBarStyleName | property |
protected var horizontalScrollBarStyleName:String = feathers-scroller-horizontal-scroll-bar
The value added to the styleNameList
of the horizontal
scroll bar. This variable is protected
so that
sub-classes can customize the horizontal scroll bar style name in
their constructors instead of using the default style name defined by
DEFAULT_CHILD_STYLE_NAME_HORIZONTAL_SCROLL_BAR
.
To customize the horizontal scroll bar style name without
subclassing, see customHorizontalScrollBarStyleName
.
See also
horizontalScrollPolicy | property |
horizontalScrollPolicy:String
Determines whether the scroller may scroll horizontally (on the x-axis) or not.
In the following example, horizontal scrolling is disabled:
scroller.horizontalScrollPolicy = Scroller.SCROLL_POLICY_OFF;
The default value is Scroller.SCROLL_POLICY_AUTO
.
public function get horizontalScrollPolicy():String
public function set horizontalScrollPolicy(value:String):void
See also
horizontalScrollPosition | property |
horizontalScrollPosition:Number
The number of pixels the container has been scrolled horizontally (on the x-axis).
In the following example, the horizontal scroll position is customized:
scroller.horizontalScrollPosition = scroller.maxHorizontalScrollPosition;
public function get horizontalScrollPosition():Number
public function set horizontalScrollPosition(value:Number):void
See also
horizontalScrollStep | property |
horizontalScrollStep:Number
The number of pixels the horizontal scroll position can be adjusted by a "step". Passed to the horizontal scroll bar, if one exists. Touch scrolling is not affected by the step value.
In the following example, the horizontal scroll step is customized:
scroller.horizontalScrollStep = 0;
The default value is NaN
.
public function get horizontalScrollStep():Number
public function set horizontalScrollStep(value:Number):void
interactionMode | property |
interactionMode:String
Determines how the user may interact with the scroller.
In the following example, the interaction mode is optimized for mouse:
scroller.interactionMode = Scroller.INTERACTION_MODE_MOUSE;
The default value is Scroller.INTERACTION_MODE_TOUCH
.
public function get interactionMode():String
public function set interactionMode(value:String):void
See also
isScrolling | property |
isScrolling:Boolean
[read-only] Determines if the scroller is currently scrolling with user interaction or with animation.
public function get isScrolling():Boolean
maxHorizontalPageIndex | property |
maxHorizontalPageIndex:int
[read-only] The maximum horizontal page index that may be displayed by this container, if page snapping is enabled.
public function get maxHorizontalPageIndex():int
See also
maxHorizontalScrollPosition | property |
maxHorizontalScrollPosition:Number
[read-only]
The number of pixels the scroller may be scrolled horizontally to the
right. This value is automatically calculated based on the bounds of
the viewport. The horizontalScrollPosition
property may
have a higher value than the maximum due to elastic edges. However,
once the user stops interacting with the scroller, it will
automatically animate back to the maximum or minimum position.
public function get maxHorizontalScrollPosition():Number
See also
maxVerticalPageIndex | property |
maxVerticalPageIndex:int
[read-only] The maximum vertical page index that may be displayed by this container, if page snapping is enabled.
public function get maxVerticalPageIndex():int
See also
maxVerticalScrollPosition | property |
maxVerticalScrollPosition:Number
[read-only]
The number of pixels the scroller may be scrolled vertically beyond
the bottom edge. This value is automatically calculated based on the
bounds of the viewport. The verticalScrollPosition
property may have a lower value than the minimum due to elastic
edges. However, once the user stops interacting with the scroller, it
will automatically animate back to the maximum or minimum position.
public function get maxVerticalScrollPosition():Number
See also
measureViewPort | property |
measureViewPort:Boolean
Determines if the dimensions of the view port are used when measuring the scroller. If disabled, only children other than the view port (such as the background skin) are used for measurement.
In the following example, the view port measurement is disabled:
scroller.measureViewPort = false;
The default value is true
.
public function get measureViewPort():Boolean
public function set measureViewPort(value:Boolean):void
minHorizontalPageIndex | property |
minHorizontalPageIndex:int
[read-only] The minimum horizontal page index that may be displayed by this container, if page snapping is enabled.
public function get minHorizontalPageIndex():int
See also
minHorizontalScrollPosition | property |
minHorizontalScrollPosition:Number
[read-only]
The number of pixels the scroller may be scrolled horizontally to the
left. This value is automatically calculated based on the bounds of
the viewport. The horizontalScrollPosition
property may
have a lower value than the minimum due to elastic edges. However,
once the user stops interacting with the scroller, it will
automatically animate back to the maximum or minimum position.
public function get minHorizontalScrollPosition():Number
See also
minimumDragDistance | property |
minimumDragDistance:Number
The minimum physical distance (in inches) that a touch must move before the scroller starts scrolling.
In the following example, the minimum drag distance is customized:
scroller.minimumDragDistance = 0.1;
The default value is 0.04
.
public function get minimumDragDistance():Number
public function set minimumDragDistance(value:Number):void
minimumPageThrowVelocity | property |
minimumPageThrowVelocity:Number
The minimum physical velocity (in inches per second) that a touch must move before the scroller will "throw" to the next page. Otherwise, it will settle to the nearest page.
In the following example, the minimum page throw velocity is customized:
scroller.minimumPageThrowVelocity = 2;
The default value is 5
.
public function get minimumPageThrowVelocity():Number
public function set minimumPageThrowVelocity(value:Number):void
minVerticalPageIndex | property |
minVerticalPageIndex:int
[read-only] The minimum vertical page index that may be displayed by this container, if page snapping is enabled.
public function get minVerticalPageIndex():int
See also
minVerticalScrollPosition | property |
minVerticalScrollPosition:Number
[read-only]
The number of pixels the scroller may be scrolled vertically beyond
the top edge. This value is automatically calculated based on the
bounds of the viewport. The verticalScrollPosition
property may have a lower value than the minimum due to elastic
edges. However, once the user stops interacting with the scroller, it
will automatically animate back to the maximum or minimum position.
public function get minVerticalScrollPosition():Number
See also
mouseWheelScrollDuration | property |
mouseWheelScrollDuration:Number
The duration, in seconds, of the animation when the mouse wheel initiates a scroll action.
In the following example, the duration of the animation that runs when the mouse wheel is scrolled is set to 500 milliseconds:
scroller.mouseWheelScrollDuration = 0.5;
The default value is 0.35
.
public function get mouseWheelScrollDuration():Number
public function set mouseWheelScrollDuration(value:Number):void
padding | property |
padding:Number
Quickly sets all padding properties to the same value. The
padding
getter always returns the value of
paddingTop
, but the other padding values may be
different.
In the following example, the padding is set to 20 pixels:
scroller.padding = 20;
The default value is 0
.
public function get padding():Number
public function set padding(value:Number):void
See also
paddingBottom | property |
paddingBottom:Number
The minimum space, in pixels, between the container's bottom edge and the container's content.
In the following example, the bottom padding is set to 20 pixels:
scroller.paddingBottom = 20;
The default value is 0
.
public function get paddingBottom():Number
public function set paddingBottom(value:Number):void
paddingLeft | property |
paddingLeft:Number
The minimum space, in pixels, between the container's left edge and the container's content.
In the following example, the left padding is set to 20 pixels:
scroller.paddingLeft = 20;
The default value is 0
.
public function get paddingLeft():Number
public function set paddingLeft(value:Number):void
paddingRight | property |
paddingRight:Number
The minimum space, in pixels, between the container's right edge and the container's content.
In the following example, the right padding is set to 20 pixels:
scroller.paddingRight = 20;
The default value is 0
.
public function get paddingRight():Number
public function set paddingRight(value:Number):void
paddingTop | property |
paddingTop:Number
The minimum space, in pixels, between the container's top edge and the container's content.
In the following example, the top padding is set to 20 pixels:
scroller.paddingTop = 20;
The default value is 0
.
public function get paddingTop():Number
public function set paddingTop(value:Number):void
pageHeight | property |
pageHeight:Number
When set, the vertical pages snap to this height value instead of the height of the scroller.
In the following example, the page height is set to 200 pixels:
scroller.pageHeight = 200;
public function get pageHeight():Number
public function set pageHeight(value:Number):void
See also
pageThrowDuration | property |
pageThrowDuration:Number
The duration, in seconds, of the animation when the scroller is thrown to a page.
In the following example, the duration of the animation that changes the page when thrown is set to 250 milliseconds:
scroller.pageThrowDuration = 0.25;
The default value is 0.5
.
public function get pageThrowDuration():Number
public function set pageThrowDuration(value:Number):void
pageWidth | property |
pageWidth:Number
When set, the horizontal pages snap to this width value instead of the width of the scroller.
In the following example, the page width is set to 200 pixels:
scroller.pageWidth = 200;
public function get pageWidth():Number
public function set pageWidth(value:Number):void
See also
pendingHorizontalPageIndex | property |
protected var pendingHorizontalPageIndex:int
The pending horizontal page index to scroll to after validating. The
flag hasPendingHorizontalPageIndex
must be set to true
if there is a pending page index to scroll to.
See also
pendingHorizontalScrollPosition | property |
protected var pendingHorizontalScrollPosition:Number = NaN
The pending horizontal scroll position to scroll to after validating.
A value of NaN
means that the scroller won't scroll to a
horizontal position after validating.
pendingScrollDuration | property |
protected var pendingScrollDuration:Number
The duration of the pending scroll action.
pendingVerticalPageIndex | property |
protected var pendingVerticalPageIndex:int
The pending vertical page index to scroll to after validating. The
flag hasPendingVerticalPageIndex
must be set to true
if there is a pending page index to scroll to.
See also
pendingVerticalScrollPosition | property |
protected var pendingVerticalScrollPosition:Number = NaN
The pending vertical scroll position to scroll to after validating.
A value of NaN
means that the scroller won't scroll to a
vertical position after validating.
revealScrollBarsDuration | property |
revealScrollBarsDuration:Number
The duration, in seconds, that the scroll bars will be shown when
calling revealScrollBars()
The default value is 1.0
.
public function get revealScrollBarsDuration():Number
public function set revealScrollBarsDuration(value:Number):void
See also
scrollBarDisplayMode | property |
scrollBarDisplayMode:String
Determines how the scroll bars are displayed.
In the following example, the scroll bars are fixed:
scroller.scrollBarDisplayMode = Scroller.SCROLL_BAR_DISPLAY_MODE_FIXED;
The default value is Scroller.SCROLL_BAR_DISPLAY_MODE_FLOAT
.
public function get scrollBarDisplayMode():String
public function set scrollBarDisplayMode(value:String):void
See also
snapScrollPositionsToPixels | property |
snapScrollPositionsToPixels:Boolean
If enabled, the scroll position will always be adjusted to whole pixels.
In the following example, the scroll position is not snapped to pixels:
scroller.snapScrollPositionsToPixels = false;
The default value is true
.
public function get snapScrollPositionsToPixels():Boolean
public function set snapScrollPositionsToPixels(value:Boolean):void
snapToPages | property |
snapToPages:Boolean
Determines if scrolling will snap to the nearest page.
In the following example, the scroller snaps to the nearest page:
scroller.snapToPages = true;
The default value is false
.
public function get snapToPages():Boolean
public function set snapToPages(value:Boolean):void
throwEase | property |
throwEase:Object
The easing function used for "throw" animations.
In the following example, the ease of throwing animations is customized:
scroller.throwEase = Transitions.EASE_IN_OUT;
public function get throwEase():Object
public function set throwEase(value:Object):void
See also
throwElasticity | property |
throwElasticity:Number
If the scroll position goes outside the minimum or maximum bounds
when the scroller's content is "thrown", the scrolling will be
constrained using this multiplier. A value of 0
means
that the scroller will not go beyond its minimum or maximum bounds.
A value of 1
means that going beyond the minimum or
maximum bounds is completely unrestrained.
In the following example, the elasticity of throwing beyond the scroller's edges is customized:
scroller.throwElasticity = 0.1;
The default value is 0.05
.
public function get throwElasticity():Number
public function set throwElasticity(value:Number):void
See also
useFixedThrowDuration | property |
useFixedThrowDuration:Boolean
If true
, the duration of a "throw" animation will be the
same no matter the value of the throw's initial velocity. This value
may be set to false
to have the scroller calculate a
variable duration based on the velocity of the throw.
It may seem unintuitive, but using the same fixed duration for any velocity is recommended if you are looking to closely match the behavior of native scrolling on iOS.
In the following example, the duration of the animation that changes the scroller's content is equal:
scroller.throwDuration = 1.5;
The default value is 2.0
.
public function get useFixedThrowDuration():Boolean
public function set useFixedThrowDuration(value:Boolean):void
See also
verticalMouseWheelScrollDirection | property |
verticalMouseWheelScrollDirection:String
The direction of scrolling when the user scrolls the mouse wheel vertically. In some cases, it is common for a container that only scrolls horizontally to scroll even when the mouse wheel is scrolled vertically.
In the following example, the direction of scrolling when using the mouse wheel is changed:
scroller.verticalMouseWheelScrollDirection = Scroller.MOUSE_WHEEL_SCROLL_DIRECTION_HORIZONTAL;
The default value is Scroller.MOUSE_WHEEL_SCROLL_DIRECTION_VERTICAL
.
public function get verticalMouseWheelScrollDirection():String
public function set verticalMouseWheelScrollDirection(value:String):void
See also
verticalMouseWheelScrollStep | property |
verticalMouseWheelScrollStep:Number
The number of pixels the vertical scroll position can be adjusted by
a "step" when using the mouse wheel. If this value is
NaN
, the mouse wheel will use the same scroll step as the scroll bars.
In the following example, the vertical mouse wheel scroll step is customized:
scroller.verticalMouseWheelScrollStep = 10;
The default value is NaN
.
public function get verticalMouseWheelScrollStep():Number
public function set verticalMouseWheelScrollStep(value:Number):void
verticalPageCount | property |
verticalPageCount:int
[read-only]
The number of vertical pages, if snapping is enabled. If snapping
is disabled, the page count will always be 1
.
If the scroller's view port supports infinite scrolling, this
property will return int.MAX_VALUE
, since an
int
cannot hold the value Number.POSITIVE_INFINITY
.
public function get verticalPageCount():int
See also
verticalPageIndex | property |
verticalPageIndex:int
[read-only]
The index of the vertical page, if snapping is enabled. If snapping
is disabled, the index will always be 0
.
public function get verticalPageIndex():int
See also
verticalScrollBar | property |
protected var verticalScrollBar:IScrollBar
The vertical scrollbar instance. May be null.
For internal use in subclasses.
See also
verticalScrollBarFactory | property |
verticalScrollBarFactory:Function
Creates the vertical scroll bar. The vertical scroll bar must be an
instance of Button
. This factory can be used to change
properties on the vertical scroll bar when it is first created. For
instance, if you are skinning Feathers components without a theme,
you might use this factory to set skins and other styles on the
vertical scroll bar.
This function is expected to have the following signature:
function():IScrollBar
In the following example, a custom vertical scroll bar factory is passed to the scroller:
scroller.verticalScrollBarFactory = function():IScrollBar { return new ScrollBar(); };
The default value is null
.
public function get verticalScrollBarFactory():Function
public function set verticalScrollBarFactory(value:Function):void
See also
verticalScrollBarName | property |
verticalScrollBarName:String
DEPRECATED: Replaced by verticalScrollBarStyleName
.
DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.
protected function get verticalScrollBarName():String
protected function set verticalScrollBarName(value:String):void
See also
verticalScrollBarPosition | property |
verticalScrollBarPosition:String
Determines where the vertical scroll bar will be positioned.
In the following example, the scroll bars is positioned on the left:
scroller.verticalScrollBarPosition = Scroller.VERTICAL_SCROLL_BAR_POSITION_LEFT;
The default value is Scroller.VERTICAL_SCROLL_BAR_POSITION_RIGHT
.
public function get verticalScrollBarPosition():String
public function set verticalScrollBarPosition(value:String):void
See also
verticalScrollBarProperties | property |
verticalScrollBarProperties:Object
An object that stores properties for the container's vertical scroll
bar, and the properties will be passed down to the vertical scroll
bar when the container validates. The available properties depend on
which IScrollBar
implementation is returned by
verticalScrollBarFactory
. Refer to
feathers.controls.IScrollBar
for a list of available scroll bar implementations.
If the subcomponent has its own subcomponents, their properties
can be set too, using attribute @
notation. For example,
to set the skin on the thumb which is in a SimpleScrollBar
,
which is in a List
, you can use the following syntax:
list.verticalScrollBarProperties.@thumbProperties.defaultSkin = new Image(texture);
Setting properties in a verticalScrollBarFactory
function instead of using verticalScrollBarProperties
will result in better performance.
In the following example, properties for the vertical scroll bar are passed to the container:
scroller.verticalScrollBarProperties.liveDragging = false;
The default value is null
.
public function get verticalScrollBarProperties():Object
public function set verticalScrollBarProperties(value:Object):void
See also
verticalScrollBarStyleName | property |
protected var verticalScrollBarStyleName:String = feathers-scroller-vertical-scroll-bar
The value added to the styleNameList
of the vertical
scroll bar. This variable is protected
so that
sub-classes can customize the vertical scroll bar style name in their
constructors instead of using the default style name defined by
DEFAULT_CHILD_STYLE_NAME_VERTICAL_SCROLL_BAR
.
To customize the vertical scroll bar style name without
subclassing, see customVerticalScrollBarStyleName
.
See also
verticalScrollPolicy | property |
verticalScrollPolicy:String
Determines whether the scroller may scroll vertically (on the y-axis) or not.
In the following example, vertical scrolling is disabled:
scroller.verticalScrollPolicy = Scroller.SCROLL_POLICY_OFF;
The default value is Scroller.SCROLL_POLICY_AUTO
.
public function get verticalScrollPolicy():String
public function set verticalScrollPolicy(value:String):void
See also
verticalScrollPosition | property |
verticalScrollPosition:Number
The number of pixels the container has been scrolled vertically (on the y-axis).
In the following example, the vertical scroll position is customized:
scroller.verticalScrollPosition = scroller.maxVerticalScrollPosition;
public function get verticalScrollPosition():Number
public function set verticalScrollPosition(value:Number):void
See also
verticalScrollStep | property |
verticalScrollStep:Number
The number of pixels the vertical scroll position can be adjusted by a "step". Passed to the vertical scroll bar, if one exists. Touch scrolling is not affected by the step value.
In the following example, the vertical scroll step is customized:
scroller.verticalScrollStep = 0;
The default value is NaN
.
public function get verticalScrollStep():Number
public function set verticalScrollStep(value:Number):void
viewPort | property |
viewPort:IViewPort
The display object displayed and scrolled within the Scroller.
The default value is null
.
public function get viewPort():IViewPort
public function set viewPort(value:IViewPort):void
Scroller | () | Constructor |
public function Scroller()
Constructor.
autoSizeIfNeeded | () | method |
protected function autoSizeIfNeeded():Boolean
If the component's dimensions have not been set explicitly, it will
measure its content and determine an ideal size for itself. If the
explicitWidth
or explicitHeight
member
variables are set, those value will be used without additional
measurement. If one is set, but not the other, the dimension with the
explicit value will not be measured, but the other non-explicit
dimension will still need measurement.
Calls setSizeInternal()
to set up the
actualWidth
and actualHeight
member
variables used for layout.
Meant for internal use, and subclasses may override this function with a custom implementation.
ReturnsBoolean |
completeScroll | () | method |
protected function completeScroll():void
Prepares the scroller for normal interaction and dispatches
FeathersEventType.SCROLL_COMPLETE
.
createScrollBars | () | method |
protected function createScrollBars():void
Creates and adds the horizontalScrollBar
and
verticalScrollBar
sub-components and removes the old
instances, if they exist.
Meant for internal use, and subclasses may override this function with a custom implementation.
See also
handlePendingScroll | () | method |
protected function handlePendingScroll():void
Scrolls to a pending scroll position, if required.
layoutChildren | () | method |
protected function layoutChildren():void
Positions and sizes children based on the actual width and height values.
refreshBackgroundSkin | () | method |
protected function refreshBackgroundSkin():void
Choose the appropriate background skin based on the control's current state.
revealScrollBars | () | method |
public function revealScrollBars():void
If the scroll bars are floating, briefly show them as a hint to the user. Useful when first navigating to a screen to give the user context about both the ability to scroll and the current scroll position.
See also
scrollToPageIndex | () | method |
public function scrollToPageIndex(horizontalPageIndex:int, verticalPageIndex:int, animationDuration:Number):void
After the next validation, animates the scroll position to a specific
page index. To scroll in only one direction, pass in the value of the
horizontalPageIndex
or the
verticalPageIndex
property to the appropriate parameter.
If the animationDuration
argument is NaN
(the default value) the value of the pageThrowDuration
property is used for the duration. The duration is in seconds.
You can only scroll to a page if the snapToPages
property is true
.
In the following example, we scroll to the last horizontal page:
scroller.scrollToPageIndex( scroller.horizontalPageCount - 1, scroller.verticalPageIndex );
Parameters
horizontalPageIndex:int | |
verticalPageIndex:int | |
animationDuration:Number (default = NaN )
|
See also
scrollToPosition | () | method |
public function scrollToPosition(horizontalScrollPosition:Number, verticalScrollPosition:Number, animationDuration:Number):void
After the next validation, animates the scroll positions to a
specific location. May scroll in only one direction by passing in a
value of NaN
for either scroll position. If the
animationDuration
argument is NaN
(the
default value), the duration of a standard throw is used. The
duration is in seconds.
Because this function is primarily designed for animation, using a
duration of 0
may require a frame or two before the
scroll position updates.
In the following example, we scroll to the maximum vertical scroll position:
scroller.scrollToPosition( scroller.horizontalScrollPosition, scroller.maxVerticalScrollPosition );
Parameters
horizontalScrollPosition:Number | |
verticalScrollPosition:Number | |
animationDuration:Number (default = NaN )
|
See also
startScroll | () | method |
protected function startScroll():void
If scrolling hasn't already started, prepares the scroller to scroll
and dispatches FeathersEventType.SCROLL_START
.
stopScrolling | () | method |
public function stopScrolling():void
If the user is scrolling with touch or if the scrolling is animated,
calling stopScrolling() will cause the scroller to ignore the drag
and stop animations. This function may only be called during scrolling,
so if you need to stop scrolling on a TouchEvent
with
TouchPhase.BEGAN
, you may need to wait for the scroller
to start scrolling before you can call this function.
In the following example, we listen for FeathersEventType.SCROLL_START
to stop scrolling:
scroller.addEventListener( FeathersEventType.SCROLL_START, function( event:Event ):void { scroller.stopScrolling(); });
throwTo | () | method |
protected function throwTo(targetHorizontalScrollPosition:Number, targetVerticalScrollPosition:Number, duration:Number = 0.5):void
Immediately throws the scroller to the specified position, with
optional animation. If you want to throw in only one direction, pass
in NaN
for the value that you do not want to change. The
scroller should be validated before throwing.
Parameters
targetHorizontalScrollPosition:Number (default = NaN )
| |
targetVerticalScrollPosition:Number (default = NaN )
| |
duration:Number (default = 0.5 )
|
See also
throwToPage | () | method |
protected function throwToPage(targetHorizontalPageIndex:int, targetVerticalPageIndex:int, duration:Number = 0.5):void
Immediately throws the scroller to the specified page index, with
optional animation. If you want to throw in only one direction, pass
in the value from the horizontalPageIndex
or
verticalPageIndex
property to the appropriate parameter.
The scroller must be validated before throwing, to ensure that the
minimum and maximum scroll positions are accurate.
Parameters
targetHorizontalPageIndex:int | |
targetVerticalPageIndex:int | |
duration:Number (default = 0.5 )
|
See also
beginInteraction | Event |
starling.events.Event
feathers.events.FeathersEventType.BEGIN_INTERACTION
Dispatched when the user starts dragging the scroller when
INTERACTION_MODE_TOUCH
is enabled or when the user starts
interacting with the scroll bar.
Note: If horizontalScrollPosition
or verticalScrollPosition
is set manually (in other words, the scrolling is not triggered by user
interaction), no FeathersEventType.BEGIN_INTERACTION
or FeathersEventType.END_INTERACTION
events will be
dispatched.
The properties of the event object have the following values:
Property | Value |
---|---|
bubbles | false |
currentTarget | The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget . |
data | null |
target | The Object that dispatched the event;
it is not always the Object listening for the event. Use the
currentTarget property to always access the Object
listening for the event. |
FeathersEventType.BEGIN_INTERACTION
event type is
used by many UI controls where a drag or other interaction happens
over time. An example is a Slider
control where the
user touches the thumb to begin dragging.
See also
endInteraction | Event |
starling.events.Event
feathers.events.FeathersEventType.END_INTERACTION
Dispatched when the user stops dragging the scroller when
INTERACTION_MODE_TOUCH
is enabled or when the user stops
interacting with the scroll bar. The scroller may continue scrolling
after this event is dispatched if the user interaction has also triggered
an animation.
Note: If horizontalScrollPosition
or verticalScrollPosition
is set manually (in other words, the scrolling is not triggered by user
interaction), no FeathersEventType.BEGIN_INTERACTION
or FeathersEventType.END_INTERACTION
events will be
dispatched.
The properties of the event object have the following values:
Property | Value |
---|---|
bubbles | false |
currentTarget | The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget . |
data | null |
target | The Object that dispatched the event;
it is not always the Object listening for the event. Use the
currentTarget property to always access the Object
listening for the event. |
FeathersEventType.END_INTERACTION
event type is
used by many UI controls where a drag or other interaction happens
over time. An example is a Slider
control where the
user stops touching the thumb after dragging.
Depending on the control, the result of the interaction may
continue after the interaction ends. For instance, a Scroller
may be "thrown", and the scrolling will continue animating after the
user has finished interacting with it.
See also
focusIn | Event |
starling.events.Event
feathers.events.FeathersEventType.FOCUS_IN
Dispatched when the component receives focus.
The properties of the event object have the following values:
Property | Value |
---|---|
bubbles | false |
currentTarget | The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget . |
data | null |
target | The Object that dispatched the event;
it is not always the Object listening for the event. Use the
currentTarget property to always access the Object
listening for the event. |
FeathersEventType.FOCUS_IN
event type is used by
Feathers components to indicate when they have received focus.
focusOut | Event |
starling.events.Event
feathers.events.FeathersEventType.FOCUS_OUT
Dispatched when the component loses focus.
The properties of the event object have the following values:
Property | Value |
---|---|
bubbles | false |
currentTarget | The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget . |
data | null |
target | The Object that dispatched the event;
it is not always the Object listening for the event. Use the
currentTarget property to always access the Object
listening for the event. |
FeathersEventType.FOCUS_OUT
event type is used by
Feathers components to indicate when they have lost focus.
scroll | Event |
starling.events.Event
starling.events.Event.SCROLL
Dispatched when the scroller scrolls in either direction or when the view
port's scrolling bounds have changed. Listen for FeathersEventType.SCROLL_START
to know when scrolling starts as a result of user interaction or when
scrolling is triggered by an animation. Similarly, listen for
FeathersEventType.SCROLL_COMPLETE
to know when the scrolling
ends.
The properties of the event object have the following values:
Property | Value |
---|---|
bubbles | false |
currentTarget | The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget . |
data | null |
target | The Object that dispatched the event;
it is not always the Object listening for the event. Use the
currentTarget property to always access the Object
listening for the event. |
See also
scrollComplete | Event |
starling.events.Event
feathers.events.FeathersEventType.SCROLL_COMPLETE
Dispatched when the scroller finishes scrolling in either direction as a result of either user interaction or animation. Animations may not end at the same time that user interaction ends, so the event may be delayed if user interaction triggers scrolling again.
Note: If horizontalScrollPosition
or verticalScrollPosition
is set manually (in other words, the scrolling is not triggered by user
interaction or an animated scroll), no FeathersEventType.SCROLL_START
or FeathersEventType.SCROLL_COMPLETE
events will be
dispatched.
The properties of the event object have the following values:
Property | Value |
---|---|
bubbles | false |
currentTarget | The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget . |
data | null |
target | The Object that dispatched the event;
it is not always the Object listening for the event. Use the
currentTarget property to always access the Object
listening for the event. |
FeathersEventType.SCROLL_COMPLETE
event type is used
when a control finishes scrolling in either direction as a result of
either user interaction or animation.
See also
scrollStart | Event |
starling.events.Event
feathers.events.FeathersEventType.SCROLL_START
Dispatched when the scroller starts scrolling in either direction as a result of either user interaction or animation.
Note: If horizontalScrollPosition
or verticalScrollPosition
is set manually (in other words, the scrolling is not triggered by user
interaction or an animated scroll), no FeathersEventType.SCROLL_START
or FeathersEventType.SCROLL_COMPLETE
events will be
dispatched.
The properties of the event object have the following values:
Property | Value |
---|---|
bubbles | false |
currentTarget | The Object that defines the
event listener that handles the event. For example, if you use
myButton.addEventListener() to register an event listener,
myButton is the value of the currentTarget . |
data | null |
target | The Object that dispatched the event;
it is not always the Object listening for the event. Use the
currentTarget property to always access the Object
listening for the event. |
FeathersEventType.SCROLL_START
event type is used
when a control starts scrolling in either direction as a result of
either user interaction or animation.
See also
DECELERATION_RATE_FAST | Constant |
public static const DECELERATION_RATE_FAST:Number = 0.99
Decelerates a bit faster per millisecond than the default.
See also
DECELERATION_RATE_NORMAL | Constant |
public static const DECELERATION_RATE_NORMAL:Number = 0.998
The default deceleration rate per millisecond.
See also
DEFAULT_CHILD_NAME_HORIZONTAL_SCROLL_BAR | Constant |
public static const DEFAULT_CHILD_NAME_HORIZONTAL_SCROLL_BAR:String = feathers-scroller-horizontal-scroll-bar
DEPRECATED: Replaced by Scroller.DEFAULT_CHILD_STYLE_NAME_HORIZONTAL_SCROLL_BAR
.
DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.
See also
DEFAULT_CHILD_NAME_VERTICAL_SCROLL_BAR | Constant |
public static const DEFAULT_CHILD_NAME_VERTICAL_SCROLL_BAR:String = feathers-scroller-vertical-scroll-bar
DEPRECATED: Replaced by Scroller.DEFAULT_CHILD_STYLE_NAME_VERTICAL_SCROLL_BAR
.
DEPRECATION WARNING: This property is deprecated starting with Feathers 2.1. It will be removed in a future version of Feathers according to the standard Feathers deprecation policy.
See also
DEFAULT_CHILD_STYLE_NAME_HORIZONTAL_SCROLL_BAR | Constant |
public static const DEFAULT_CHILD_STYLE_NAME_HORIZONTAL_SCROLL_BAR:String = feathers-scroller-horizontal-scroll-bar
The default value added to the styleNameList
of the
horizontal scroll bar.
See also
DEFAULT_CHILD_STYLE_NAME_VERTICAL_SCROLL_BAR | Constant |
public static const DEFAULT_CHILD_STYLE_NAME_VERTICAL_SCROLL_BAR:String = feathers-scroller-vertical-scroll-bar
The default value added to the styleNameList
of the vertical
scroll bar.
See also
INTERACTION_MODE_MOUSE | Constant |
public static const INTERACTION_MODE_MOUSE:String = mouse
The user may only interact with the scroll bars to scroll. The user cannot touch anywhere in the scroller's content and drag like a touch interface.
See also
INTERACTION_MODE_TOUCH | Constant |
public static const INTERACTION_MODE_TOUCH:String = touch
The user may touch anywhere on the scroller and drag to scroll. The scroll bars will be visual indicator of position, but they will not be interactive.
See also
INTERACTION_MODE_TOUCH_AND_SCROLL_BARS | Constant |
public static const INTERACTION_MODE_TOUCH_AND_SCROLL_BARS:String = touchAndScrollBars
The user may touch anywhere on the scroller and drag to scroll, and the scroll bars may be dragged separately. For most touch interfaces, this is not a common behavior. The scroll bar on touch interfaces is often simply a visual indicator and non-interactive.
One case where this mode might be used is a "scroll bar" that
displays a tappable alphabetical index to navigate a
GroupedList
with alphabetical categories.
See also
INVALIDATION_FLAG_CLIPPING | Constant |
protected static const INVALIDATION_FLAG_CLIPPING:String = clipping
Flag to indicate that the clipping has changed.
MOUSE_WHEEL_SCROLL_DIRECTION_HORIZONTAL | Constant |
public static const MOUSE_WHEEL_SCROLL_DIRECTION_HORIZONTAL:String = horizontal
The scroller will scroll horizontally when the mouse wheel is scrolled.
See also
MOUSE_WHEEL_SCROLL_DIRECTION_VERTICAL | Constant |
public static const MOUSE_WHEEL_SCROLL_DIRECTION_VERTICAL:String = vertical
The scroller will scroll vertically when the mouse wheel is scrolled.
See also
SCROLL_BAR_DISPLAY_MODE_FIXED | Constant |
public static const SCROLL_BAR_DISPLAY_MODE_FIXED:String = fixed
The scroll bars are always visible and appear next to the scroller's view port, making the view port smaller than the scroller.
See also
SCROLL_BAR_DISPLAY_MODE_FIXED_FLOAT | Constant |
public static const SCROLL_BAR_DISPLAY_MODE_FIXED_FLOAT:String = fixedFloat
The scroll bars appear above the scroller's view port, overlapping the content, but they do not fade out when not in use.
See also
SCROLL_BAR_DISPLAY_MODE_FLOAT | Constant |
public static const SCROLL_BAR_DISPLAY_MODE_FLOAT:String = float
The scroll bars appear above the scroller's view port, overlapping the content, and they fade out when not in use.
See also
SCROLL_BAR_DISPLAY_MODE_NONE | Constant |
public static const SCROLL_BAR_DISPLAY_MODE_NONE:String = none
The scroll bars are never visible.
See also
SCROLL_POLICY_AUTO | Constant |
public static const SCROLL_POLICY_AUTO:String = auto
The scroller may scroll if the view port is larger than the scroller's bounds. If the interaction mode is touch, the elastic edges will only be active if the maximum scroll position is greater than zero. If the scroll bar display mode is fixed, the scroll bar will only be visible when the maximum scroll position is greater than zero.
See also
SCROLL_POLICY_OFF | Constant |
public static const SCROLL_POLICY_OFF:String = off
The scroller does not scroll at all. If the scroll bar display mode is fixed or float, the scroll bar will never be visible.
See also
SCROLL_POLICY_ON | Constant |
public static const SCROLL_POLICY_ON:String = on
The scroller will always scroll. If the interaction mode is touch, elastic edges will always be active, even when the maximum scroll position is zero. If the scroll bar display mode is fixed, the scroll bar will always be visible.
See also
VERTICAL_SCROLL_BAR_POSITION_LEFT | Constant |
public static const VERTICAL_SCROLL_BAR_POSITION_LEFT:String = left
The vertical scroll bar will be positioned on the left.
See also
VERTICAL_SCROLL_BAR_POSITION_RIGHT | Constant |
public static const VERTICAL_SCROLL_BAR_POSITION_RIGHT:String = right
The vertical scroll bar will be positioned on the right.
See also