Package | spark.components |
Class | public class InlineScroller |
Inheritance | InlineScroller Scroller SkinnableComponent UIComponent FlexSprite flash.display.Sprite |
Language Version : | ActionScript 3.0 |
Product Version : | Flex 4 |
Runtime Versions : | Flash Player 10, AIR 1.5 |
This class is experimental, which means it has not been tested or documented as thoroughly as other core Apache Flex classes. |
The Spark Group, DataGroup, and RichEditableText components implement the IViewport interface and can be used as the children of the InlineScroller control, as the following example shows:
<st:InlineScroller width="100" height="100"> <s:Group> <mx:Image width="300" height="400" source="@Embed(source='assets/logo.jpg')"/> </s:Group> </st:InlineScroller>
The size of the Image control is set larger than that of its parent Group container. By default, the child extends past the boundaries of the parent container. Rather than allow the child to extend past the boundaries of the parent container, the InlineScroller specifies to clip the child to the boundaries and display scroll bars.
Not all Spark containers implement the IViewPort interface. Therefore, those containers, such as the Border and SkinnableContainer containers, cannot be used as the direct child of the InlineScroller component. However, all Spark containers can have a InlineScroller component as a child component. For example, to use scroll bars on a child of the Spark Border container, wrap the child in a InlineScroller component.
To make the entire Border container scrollable, wrap it in a Group container. Then, make the Group container the child of the InlineScroller component, For skinnable Spark containers that do not implement the IViewport interface, you can also create a custom skin for the container that includes the InlineScroller component.
The IViewport interface defines a viewport for the components that implement it.
A viewport is a rectangular subset of the area of a container that you want to display,
rather than displaying the entire container.
The scroll bars control the viewport's horizontalScrollPosition
and
verticalScrollPosition
properties.
scroll bars make it possible to view the area defined by the viewport's
contentWidth
and contentHeight
properties.
You can combine scroll bars with explicit settings for the container's viewport. The viewport settings determine the initial position of the viewport, and then you can use the scroll bars to move it, as the following example shows:
<st:InlineScroller width="100" height="100"> <s:Group horizontalScrollPosition="50" verticalScrollPosition="50"> <mx:Image width="300" height="400" source="@Embed(source='assets/logo.jpg')"/> </s:Group> </st:InlineScroller>
The scroll bars are displayed according to the vertical and horizontal scroll bar
policy, which can be auto
, on
, or off
.
The auto
policy means that the scroll bar will be visible and included
in the layout when the viewport's content is larger than the viewport itself.
The InlineScroller skin layout cannot be changed. It is unconditionally set to a
private layout implementation that handles the scroll policies. InlineScroller skins
can only provide replacement scroll bars. To gain more control over the layout
of a viewport and its scroll bars, instead of using InlineScroller, just add them
to a Group
and use the scroll bar viewport
property
to link them together.
The InlineScroller control has the following default characteristics:
Characteristic | Description |
---|---|
Default size | 0 |
Minimum size | 0 |
Maximum size | 10000 pixels wide and 10000 pixels high |
Default skin class | spark.skins.controls.InlineScrollerSkin |
The <st:InlineScroller>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<st:InlineScroller Properties measuredSizeIncludesScrollBars="true" minViewportInset="0" viewport="null" Styles alignmentBaseline="use_dominant_baseline" alternatingItemColors="" baselineShift="0.0" blockProgression="TB" breakOpportunity="auto" cffHinting="horizontal_stem" color="0" contentBackgroundAlpha="" contentBackgroundColor="" digitCase="default" digitWidth="default" direction="LTR" dominantBaseline="auto" firstBaselineOffset="auto" focusColor="" focusedTextSelectionColor="" fontFamily="Times New Roman" fontLookup="device" fontSize="12" fontStyle="normal" fontWeight="normal" horizontalScrollPolicy="auto" inactiveTextSelection="" justificationRule="auto" justificationStyle="auto" kerning="auto" leadingModel="auto" ligatureLevel="common" lineHeight="120%" lineThrough="false" locale="en" paragraphEndIndent="0" paragraphSpaceAfter="0" paragraphSpaceBefore="0" paragraphStartIndent="0" renderingMode="CFF" rollOverColor="" symbolColor="" tabStops="null" textAlign="start" textAlignLast="start" textAlpha="1" textDecoration="none" textIndent="0" textJustify="inter_word" textRotation="auto" trackingLeft="0" trackingRight="0" typographicCase="default" unfocusedTextSelectionColor="" verticalScrollPolicy="auto" whiteSpaceCollapse="collapse" />
Default MXML Propertyviewport
See also
Method | Defined By | ||
---|---|---|---|
Constructor. | InlineScroller | ||
This operation is not supported in Scroller. | Scroller | ||
This operation is not supported in Scroller. | Scroller | ||
addStyleClient(styleClient:IAdvancedStyleClient):void
Adds a non-visual style client to this component instance. | UIComponent | ||
callLater(method:Function, args:Array = null):void
Queues a function to be called later. | UIComponent | ||
clearStyle(styleProp:String):void
Deletes a style property from this component instance. | UIComponent | ||
contentToGlobal(point:Point):Point
Converts a Point object from content coordinates to global coordinates. | UIComponent | ||
contentToLocal(point:Point):Point
Converts a Point object from content to local coordinates. | UIComponent | ||
createAutomationIDPart(child:IAutomationObject):Object
Returns a set of properties that identify the child within
this container. | UIComponent | ||
createAutomationIDPartWithRequiredProperties(child:IAutomationObject, properties:Array):Object
Returns a set of properties as automation IDs that identify the child within
this container. | UIComponent | ||
createReferenceOnParentDocument(parentDocument:IFlexDisplayObject):void
Creates an id reference to this IUIComponent object
on its parent document object. | UIComponent | ||
deleteReferenceOnParentDocument(parentDocument:IFlexDisplayObject):void
Deletes the id reference to this IUIComponent object
on its parent document object. | UIComponent | ||
Returns a UITextFormat object corresponding to the text styles
for this UIComponent. | UIComponent | ||
dispatchEvent(event:Event):Boolean [override]
Dispatches an event into the event flow. | UIComponent | ||
drawFocus(isFocused:Boolean):void
Shows or hides the focus indicator around this component. | UIComponent | ||
drawRoundRect(x:Number, y:Number, w:Number, h:Number, r:Object = null, c:Object = null, alpha:Object = null, rot:Object = null, gradient:String = null, ratios:Array = null, hole:Object = null):void
Programmatically draws a rectangle into this skin's Graphics object. | UIComponent | ||
effectFinished(effectInst:IEffectInstance):void
Called by the effect instance when it stops playing on the component. | UIComponent | ||
effectStarted(effectInst:IEffectInstance):void
Called by the effect instance when it starts playing on the component. | UIComponent | ||
endEffectsStarted():void
Ends all currently playing effects on the component. | UIComponent | ||
ensureElementIsVisible(element:IVisualElement):void
Scrolls the viewport so the specified element is visible. | Scroller | ||
executeBindings(recurse:Boolean = false):void
Executes all the bindings for which the UIComponent object is the destination. | UIComponent | ||
finishPrint(obj:Object, target:IFlexDisplayObject):void
Called after printing is complete. | UIComponent | ||
generateMXMLArray(document:Object, data:Array, recursive:Boolean = true):Array | UIComponent | ||
generateMXMLVector(document:Object, data:Array, recursive:Boolean = true):* | UIComponent | ||
getAutomationChildAt(index:int):IAutomationObject
Provides the automation object at the specified index. | UIComponent | ||
getAutomationChildren():Array
Provides the automation object list . | UIComponent | ||
getBoundsXAtSize(width:Number, height:Number, postLayoutTransform:Boolean = true):Number
Returns the x coordinate of the element's bounds at the specified element size. | UIComponent | ||
getBoundsYAtSize(width:Number, height:Number, postLayoutTransform:Boolean = true):Number
Returns the y coordinate of the element's bounds at the specified element size. | UIComponent | ||
getClassStyleDeclarations():Array
Finds the type selectors for this UIComponent instance. | UIComponent | ||
getConstraintValue(constraintName:String):*
Returns a layout constraint value, which is the same as
getting the constraint style for this component. | UIComponent | ||
getElementAt(index:int):IVisualElement
Returns the viewport if there is a viewport and the
index passed in is 0. | Scroller | ||
getElementIndex(element:IVisualElement):int
Returns 0 if the element passed in is the viewport. | Scroller | ||
getExplicitOrMeasuredHeight():Number
A convenience method for determining whether to use the
explicit or measured height
| UIComponent | ||
getExplicitOrMeasuredWidth():Number
A convenience method for determining whether to use the
explicit or measured width
| UIComponent | ||
getFocus():InteractiveObject
Gets the object that currently has focus. | UIComponent | ||
getLayoutBoundsHeight(postLayoutTransform:Boolean = true):Number
Returns the element's layout height. | UIComponent | ||
getLayoutBoundsWidth(postLayoutTransform:Boolean = true):Number
Returns the element's layout width. | UIComponent | ||
getLayoutBoundsX(postLayoutTransform:Boolean = true):Number
Returns the x coordinate that the element uses to draw on screen. | UIComponent | ||
getLayoutBoundsY(postLayoutTransform:Boolean = true):Number
Returns the y coordinate that the element uses to draw on screen. | UIComponent | ||
getLayoutMatrix():Matrix
Returns the transform matrix that is used to calculate the component's
layout relative to its siblings. | UIComponent | ||
getLayoutMatrix3D():Matrix3D
Returns the layout transform Matrix3D for this element. | UIComponent | ||
getMaxBoundsHeight(postLayoutTransform:Boolean = true):Number
Returns the element's maximum height. | UIComponent | ||
getMaxBoundsWidth(postLayoutTransform:Boolean = true):Number
Returns the element's maximum width. | UIComponent | ||
getMinBoundsHeight(postLayoutTransform:Boolean = true):Number
Returns the element's minimum height. | UIComponent | ||
getMinBoundsWidth(postLayoutTransform:Boolean = true):Number
Returns the element's minimum width. | UIComponent | ||
getPreferredBoundsHeight(postLayoutTransform:Boolean = true):Number
Returns the element's preferred height. | UIComponent | ||
getPreferredBoundsWidth(postLayoutTransform:Boolean = true):Number
Returns the element's preferred width. | UIComponent | ||
getRepeaterItem(whichRepeater:int = -1):Object
Returns the item in the dataProvider that was used
by the specified Repeater to produce this Repeater, or
null if this Repeater isn't repeated. | UIComponent | ||
getStyle(styleProp:String):*
Gets a style property that has been set anywhere in this
component's style lookup chain. | UIComponent | ||
getVisibleRect(targetParent:DisplayObject = null):Rectangle
Get the bounds of this object that are visible to the user
on the screen. | UIComponent | ||
globalToContent(point:Point):Point
Converts a Point object from global to content coordinates. | UIComponent | ||
hasCSSState():Boolean
Returns true if currentCSSState is not null. | UIComponent | ||
hasState(stateName:String):Boolean
Determines whether the specified state has been defined on this
UIComponent. | UIComponent | ||
horizontalGradientMatrix(x:Number, y:Number, width:Number, height:Number):Matrix
Returns a box Matrix which can be passed to the
drawRoundRect() method
as the rot parameter when drawing a horizontal gradient. | UIComponent | ||
initialize():void
Initializes the internal structure of this component. | UIComponent | ||
initializeRepeaterArrays(parent:IRepeaterClient):void
Initializes various properties which keep track of repeated instances
of this component. | UIComponent | ||
invalidateDisplayList():void
Marks a component so that its updateDisplayList()
method gets called during a later screen update. | UIComponent | ||
invalidateLayering():void
Called by a component's items to indicate that their depth
property has changed. | UIComponent | ||
invalidateLayoutDirection():void
An element must call this method when its layoutDirection changes or
when its parent's layoutDirection changes. | UIComponent | ||
invalidateProperties():void
Marks a component so that its commitProperties()
method gets called during a later screen update. | UIComponent | ||
invalidateSize():void
Marks a component so that its measure()
method gets called during a later screen update. | UIComponent | ||
invalidateSkinState():void
Marks the component so that the new state of the skin is set
during a later screen update. | SkinnableComponent | ||
localToContent(point:Point):Point
Converts a Point object from local to content coordinates. | UIComponent | ||
matchesCSSState(cssState:String):Boolean
Returns true if cssState matches currentCSSState. | UIComponent | ||
matchesCSSType(cssType:String):Boolean
Determines whether this instance is the same as, or is a subclass of,
the given type. | UIComponent | ||
measureHTMLText(htmlText:String):TextLineMetrics
Measures the specified HTML text, which can contain HTML tags such
as <font> and <b>,
assuming that it is displayed
in a single-line UITextField using a UITextFormat
determined by the styles of this UIComponent. | UIComponent | ||
measureText(text:String):TextLineMetrics
Measures the specified text, assuming that it is displayed
in a single-line UITextField (or UIFTETextField) using a UITextFormat
determined by the styles of this UIComponent. | UIComponent | ||
move(x:Number, y:Number):void
Moves the component to a specified position within its parent. | UIComponent | ||
notifyStyleChangeInChildren(styleProp:String, recursive:Boolean):void
Propagates style changes to the children. | UIComponent | ||
owns(child:DisplayObject):Boolean
Returns true if the chain of owner properties
points from child to this UIComponent. | UIComponent | ||
parentChanged(p:DisplayObjectContainer):void
Called by Flex when a UIComponent object is added to or removed from a parent. | UIComponent | ||
prepareToPrint(target:IFlexDisplayObject):Object
Prepares an IFlexDisplayObject for printing. | UIComponent | ||
regenerateStyleCache(recursive:Boolean):void
Builds or rebuilds the CSS style cache for this component
and, if the recursive parameter is true,
for all descendants of this component as well. | UIComponent | ||
registerEffects(effects:Array):void
For each effect event, registers the EffectManager
as one of the event listeners. | UIComponent | ||
removeAllElements():void
This operation is not supported in Scroller. | Scroller | ||
This operation is not supported in Scroller. | Scroller | ||
removeElementAt(index:int):IVisualElement
This operation is not supported in Scroller. | Scroller | ||
removeStyleClient(styleClient:IAdvancedStyleClient):void
Removes a non-visual style client from this component instance. | UIComponent | ||
replayAutomatableEvent(event:Event):Boolean
Replays the specified event. | UIComponent | ||
resolveAutomationIDPart(criteria:Object):Array
Resolves a child by using the id provided. | UIComponent | ||
resumeBackgroundProcessing():void [static]
Resumes the background processing of methods
queued by callLater(), after a call to
suspendBackgroundProcessing(). | UIComponent | ||
setActualSize(w:Number, h:Number):void
Sizes the object. | UIComponent | ||
setConstraintValue(constraintName:String, value:*):void
Sets a layout constraint value, which is the same as
setting the constraint style for this component. | UIComponent | ||
setCurrentState(stateName:String, playTransition:Boolean = true):void
Set the current state. | UIComponent | ||
setElementIndex(element:IVisualElement, index:int):void
This operation is not supported in Scroller. | Scroller | ||
setFocus():void
Sets the focus to this component. | UIComponent | ||
setLayoutBoundsPosition(x:Number, y:Number, postLayoutTransform:Boolean = true):void
Sets the coordinates that the element uses to draw on screen. | UIComponent | ||
setLayoutBoundsSize(width:Number, height:Number, postLayoutTransform:Boolean = true):void
Sets the layout size of the element. | UIComponent | ||
setLayoutMatrix(value:Matrix, invalidateLayout:Boolean):void
Sets the transform Matrix that is used to calculate the component's layout
size and position relative to its siblings. | UIComponent | ||
setLayoutMatrix3D(value:Matrix3D, invalidateLayout:Boolean):void
Sets the transform Matrix3D that is used to calculate the component's layout
size and position relative to its siblings. | UIComponent | ||
setMXMLDescriptor(value:Array):void | UIComponent | ||
setMXMLProperties(value:Array):void | UIComponent | ||
setStyle(styleProp:String, newValue:*):void
Sets a style property on this component instance. | UIComponent | ||
setVisible(value:Boolean, noEvent:Boolean = false):void
Called when the visible property changes. | UIComponent | ||
styleChanged(styleProp:String):void
Detects changes to style properties. | UIComponent | ||
stylesInitialized():void
Flex calls the stylesInitialized() method when
the styles for a component are first initialized. | UIComponent | ||
suspendBackgroundProcessing():void [static]
Blocks the background processing of methods
queued by callLater(),
until resumeBackgroundProcessing() is called. | UIComponent | ||
This operation is not supported in Scroller. | Scroller | ||
swapElementsAt(index1:int, index2:int):void
This operation is not supported in Scroller. | Scroller | ||
toString():String [override]
Returns a string indicating the location of this object
within the hierarchy of DisplayObjects in the Application. | FlexSprite | ||
transformAround(transformCenter:Vector3D, scale:Vector3D = null, rotation:Vector3D = null, translation:Vector3D = null, postLayoutScale:Vector3D = null, postLayoutRotation:Vector3D = null, postLayoutTranslation:Vector3D = null, invalidateLayout:Boolean = true):void
A utility method to update the rotation, scale, and translation of the
transform while keeping a particular point, specified in the component's
own coordinate space, fixed in the parent's coordinate space. | UIComponent | ||
transformPointToParent(localPosition:Vector3D, position:Vector3D, postLayoutPosition:Vector3D):void
A utility method to transform a point specified in the local
coordinates of this object to its location in the object's parent's
coordinates. | UIComponent | ||
validateDisplayList():void
Validates the position and size of children and draws other
visuals. | UIComponent | ||
validateNow():void
Validate and update the properties and layout of this object
and redraw it, if necessary. | UIComponent | ||
validateProperties():void
Used by layout logic to validate the properties of a component
by calling the commitProperties() method. | UIComponent | ||
validateSize(recursive:Boolean = false):void
Validates the measured size of the component
If the LayoutManager.invalidateSize() method is called with
this ILayoutManagerClient, then the validateSize() method
is called when it's time to do measurements. | UIComponent | ||
validationResultHandler(event:ValidationResultEvent):void
Handles both the valid and invalid events from a
validator assigned to this component. | UIComponent | ||
verticalGradientMatrix(x:Number, y:Number, width:Number, height:Number):Matrix
Returns a box Matrix which can be passed to drawRoundRect()
as the rot parameter when drawing a vertical gradient. | UIComponent |
This component uses skins made up of skin parts. Do not set the skin parts directly. The component's skin sets the skin parts.