|Class||public class BasicLayout|
|Inheritance||BasicLayout LayoutBase OnDemandEventDispatcher Object|
|Language Version :||ActionScript 3.0|
|Product Version :||Flex 4|
|Runtime Versions :||Flash Player 10, AIR 1.5|
yproperties of the child, or constraints to position each child.
Note: The Spark list-based controls (the Spark List control and its subclasses such as ButtonBar, ComboBox, DropDownList, and TabBar) do not support the BasicLayout class. Do not use BasicLayout with the Spark list-based controls.
Per-element supported constraints are
Element's minimum and maximum sizes will always be respected.
The measured size of the container is calculated from the elements, their constraints and their preferred sizes. The measured size of the container is big enough to fit in all of the elements at their preferred sizes with their constraints satisfied.
Here are some examples of how measured size is calculated:
leftconstraint specified, then the container's measured width will be equal to the element's preferred width plus the value of the
percentWidthspecified, then the container's measured width will be equal to the element's preferred width. Even though the element's
percentWidthis not directly factored in the calculations, it will be respected during a call to the
baselineconstraint specified, then the container's measured height will be equal to the element's preferred height plus the
baselineand minus the value of the element's
verticalCenterconstraint specified, then the container's measured height will be equal to the element's preferred height plus double the value of the
During a call to the
the element's size is determined according to
the rules in the following order of precedence (the element's minimum and
maximum sizes are always respected):
percentHeightset, then its size is calculated as a percentage of the available size, where the available size is the container size minus any
bottomconstraints, it's height is set to be the container's height minus the
The BasicLayout class calculates its minimum size as the maximum of the minimum child sizes:
Therefore, if a child is constrained to its parent, then the layout uses the child's minimum size. Otherwise, it uses its preferred size of the child to calculate the minimum size for the container.
The element's position is determined according to the rules in the following order of precedence:
verticalCenterconstraints specify the distance between the container's center and the element's center. Set the
verticalCenterconstraints to zero to center the element within the container in the horizontal or vertical direction.
baselinePosition(usually the base line of its first line of text) is aligned with
leftconstraints are specified, then the element is positioned such that the top-left corner of the element's layout bounds is offset from the top-left corner of the container by the specified values.
rightconstraints are specified, then the element is positioned such that the bottom-right corner of the element's layout bounds is offset from the bottom-right corner of the container by the specified values.
The content size of the container is calculated as the maximum of the coordinates of the bottom-right corner of all the layout elements.MXML SyntaxHide MXML Syntax
<s:BasicLayout> tag inherits all of the tag
attributes of its superclass and adds no additional tag attributes:
|clipAndEnableScrolling : Boolean|
If true, specifies to clip the children to the boundaries of the viewport.
|dropIndicator : DisplayObject|
The DisplayObject that this layout uses for the drop indicator during a drag-and-drop operation.
|horizontalScrollPosition : Number|
The x coordinate of the origin of the viewport in the component's coordinate system, where the default value is (0,0) corresponding to the upper-left corner of the component.
|target : GroupBase|
The GroupBase container whose elements are measured, sized and positioned by this layout.
|typicalLayoutElement : ILayoutElement|
Used by layouts when fixed row/column sizes are requested but a specific size isn't specified.
|useVirtualLayout : Boolean|
A container can hold any number of children.
|verticalScrollPosition : Number|
The y coordinate of the origin of the viewport in the component's coordinate system, where the default value is (0,0) corresponding to the upper-left corner of the component.
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Calculates the drop location in the data provider of the drop target for the specified dragEvent.
When useVirtualLayout is true, this method can be used by the layout target to clear cached layout information when the target changes.
Called by the target after a layout element has been added and before the target's size and display list are validated.
This method must is called by the target after a layout element has been removed and before the target's size and display list are validated.
Returns the specified element's layout bounds as a Rectangle or null if the index is invalid, the corresponding element is null, includeInLayout=false, or if this layout's target property is null.
Returns the change to the horizontal scroll position to handle different scrolling options.
getNavigationDestinationIndex(currentIndex:int, navigationUnit:uint, arrowKeysWrapFocus:Boolean):int
Delegation method that determines which item to navigate to based on the current item in focus and user input in terms of NavigationUnit.
Computes the verticalScrollPosition and horizontalScrollPosition deltas needed to scroll the element at the specified index into view.
Returns the change to the vertical scroll position to handle different scrolling options.
Hides the previously shown drop indicator, created by the showDropIndicator() method, removes it from the display list and also stops the drag scrolling.
Measures the target's default size based on its content, and optionally measures the target's default minimum size.
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Sizes, positions and parents the drop indicator based on the specified drop location.
Sizes and positions the target's elements.
Called by the target at the end of its updateDisplayList to have the layout update its scrollRect.
Calculates how much to scroll for the specified dropLocation during a drag and drop gesture.
Returns the index where a new item should be inserted if the user releases the mouse at the specified coordinates while completing a drag and drop gesture.
Calculates the bounds for the drop indicator that provides visual feedback to the user of where the items will be inserted at the end of a drag and drop gesture.
Returns the bounds of the first layout element that either spans or is above the scrollRect's top edge.
Returns the bounds of the first layout element that either spans or is below the scrollRect's bottom edge.
Returns the bounds of the first layout element that either spans or is to the left of the scrollRect's left edge.
Returns the bounds of the first layout element that either spans or is to the right of the scrollRect's right edge.
Returns the bounds of the target's scroll rectangle in layout coordinates.
Called when the verticalScrollPosition or horizontalScrollPosition properties change.