Package | spark.components |
Class | public class TabBar |
Inheritance | TabBar ButtonBarBase ListBase SkinnableDataContainer SkinnableContainerBase SkinnableComponent UIComponent FlexSprite Sprite DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object |
Implements | IFocusManagerComponent |
Subclasses | AXMEnterpriseAssetTabBar, AXMEnterpriseAssetViewTabBar, AXMTabBar |
Language Version: | ActionScript 3.0 |
Product Version: | Flex 4 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Because this component does not define a skin for the mobile theme, Adobe recommends that you not use it in a mobile application. Alternatively, you can define your own mobile skin for the component. For more information, see Basics of mobile skinning. |
The TabBar class displays a set of identical tabs. One tab can be selected at a time, and the first tab is selected by default. The TabBarSkin class arranges the tabs in a single row. Use the TabBar
cornerRadius
style to configure the corner radius
of the tabs.
The set of tabs is defined by the dataProvider
property.
The appearance of the TabBar is defined by the TabBarSkin class.
The appearance of each tab is defined by the TabBarButtonSkin class.
You can use the TabBar control to set the active child of a ViewStack container, as the following example shows:
Note: The Spark list-based controls (the Spark ListBase class and its subclasses
such as ButtonBar, ComboBox, DropDownList, List, and TabBar) do not support the BasicLayout class
as the value of the layout
property.
Do not use BasicLayout with the Spark list-based controls.
<s:TabBar dataProvider="{myViewStack}"/> <mx:ViewStack id="myViewStack" borderStyle="solid"> <s:NavigatorContent id="search" label="Search"> <s:Label text="Search Screen"/> </s:NavigatorContent> <s:NavigatorContent id="custInfo" label="Customer Info"> <s:Label text="Customer Info"/> </s:NavigatorContent> <s:NavigatorContent id="accountInfo" label="Account Info"> <s:Label text="Account Info"/> </s:NavigatorContent> </mx:ViewStack>
The TabBar container has the following default characteristics:
Characteristic | Description |
---|---|
Default size | Large enough to display the tabs |
Minimum size | 0 pixels |
Maximum size | 10000 pixels wide and 10000 pixels high |
The <s:TabBar>
tag inherits all of the tag
attributes of its superclass and adds the following tag attributes:
<s:TabBar Styles cornerRadius="4" />
Default MXML PropertydataProvider
More examples
Using the Spark ButtonBar and TabBar controls with an MX ViewStack container
Using skins and styles with the Spark ButtonBar and TabBar controls
Handling Spark ButtonBar and TabBar events
Learn more
Differences between mobile and desktop item renderers
Working with item renderers
Using Spark list-based controls
Defining the children of a list-based control
Controlling the text displayed for each data item
Modifying the children of a list-based control
Setting the layout
Working with list events
Working with the selected item
Working with the caret item
Working with item renderers
Using a mobile item renderer with a Spark list-based control
Spark ButtonBar and TabBar controls
Related API Elements
Method | Defined By | ||
---|---|---|---|
TabBar()
Constructor. | TabBar | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registers an event listener object with an EventDispatcher object so that the listener
receives notification of an event. | EventDispatcher | ||
Adds a non-visual style client to this component instance. | UIComponent | ||
Indicates whether the security restrictions
would cause any display objects to be omitted from the list returned by calling
the DisplayObjectContainer.getObjectsUnderPoint() method
with the specified point point. | DisplayObjectContainer | ||
Queues a function to be called later. | UIComponent | ||
Deletes a style property from this component instance. | UIComponent | ||
Determines whether the specified display object is a child of the DisplayObjectContainer instance or
the instance itself. | DisplayObjectContainer | ||
Converts a Point object from content coordinates to global coordinates. | UIComponent | ||
Converts a Point object from content to local coordinates. | UIComponent | ||
Returns a set of properties that identify the child within
this container. | UIComponent | ||
Returns a set of properties that identify the child within
this container. | UIComponent | ||
Creates an id reference to this IUIComponent object
on its parent document object. | UIComponent | ||
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 | ||
[override]
Dispatches an event into the event flow. | UIComponent | ||
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 | ||
Called by the effect instance when it stops playing on the component. | UIComponent | ||
Called by the effect instance when it starts playing on the component. | UIComponent | ||
Ends all currently playing effects on the component. | UIComponent | ||
Executes all the bindings for which the UIComponent object is the destination. | UIComponent | ||
Called after printing is complete. | UIComponent | ||
Provides the automation object at the specified index. | UIComponent | ||
Provides the automation object list . | UIComponent | ||
Returns a rectangle that defines the area of the display object relative to the coordinate system
of the targetCoordinateSpace object. | DisplayObject | ||
Returns the x coordinate of the element's bounds at the specified element size. | UIComponent | ||
Returns the y coordinate of the element's bounds at the specified element size. | UIComponent | ||
Returns the child display object that exists with the specified name. | DisplayObjectContainer | ||
Finds the type selectors for this UIComponent instance. | UIComponent | ||
Returns a layout constraint value, which is the same as
getting the constraint style for this component. | UIComponent | ||
A convenience method for determining whether to use the
explicit or measured height
| UIComponent | ||
A convenience method for determining whether to use the
explicit or measured width
| UIComponent | ||
Gets the object that currently has focus. | UIComponent | ||
Returns the element's layout height. | UIComponent | ||
Returns the element's layout width. | UIComponent | ||
Returns the x coordinate that the element uses to draw on screen. | UIComponent | ||
Returns the y coordinate that the element uses to draw on screen. | UIComponent | ||
Returns the transform matrix that is used to calculate the component's
layout relative to its siblings. | UIComponent | ||
Returns the layout transform Matrix3D for this element. | UIComponent | ||
Returns the element's maximum height. | UIComponent | ||
Returns the element's maximum width. | UIComponent | ||
Returns the element's minimum height. | UIComponent | ||
Returns the element's minimum width. | UIComponent | ||
Returns an array of objects that lie under the specified point and are children
(or grandchildren, and so on) of this DisplayObjectContainer instance. | DisplayObjectContainer | ||
Returns the element's preferred height. | UIComponent | ||
Returns the element's preferred width. | UIComponent | ||
Returns a rectangle that defines the boundary of the display object,
based on the coordinate system defined by the targetCoordinateSpace
parameter, excluding any strokes on shapes. | DisplayObject | ||
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 | ||
Gets a style property that has been set anywhere in this
component's style lookup chain. | UIComponent | ||
Converts a Point object from global to content coordinates. | UIComponent | ||
Converts the point object from the Stage (global) coordinates
to the display object's (local) coordinates. | DisplayObject | ||
Converts a two-dimensional point from the Stage (global) coordinates to a
three-dimensional display object's (local) coordinates. | DisplayObject | ||
Returns true if currentCSSState is not null. | UIComponent | ||
Checks whether the EventDispatcher object has any listeners registered for a specific type
of event. | EventDispatcher | ||
Indicates whether an object has a specified property defined. | Object | ||
Determines whether the specified state has been defined on this
UIComponent. | UIComponent | ||
Evaluates the bounding box of the display object to see if it overlaps or intersects with the
bounding box of the obj display object. | DisplayObject | ||
Evaluates the display object to see if it overlaps or intersects with the
point specified by the x and y parameters. | DisplayObject | ||
Returns a box Matrix which can be passed to the
drawRoundRect() method
as the rot parameter when drawing a horizontal gradient. | UIComponent | ||
Initializes the internal structure of this component. | UIComponent | ||
Initializes various properties which keep track of repeated instances
of this component. | UIComponent | ||
Marks a component so that its updateDisplayList()
method gets called during a later screen update. | UIComponent | ||
Called by a component's items to indicate that their depth
property has changed. | UIComponent | ||
An element must call this method when its layoutDirection changes or
when its parent's layoutDirection changes. | UIComponent | ||
Marks a component so that its commitProperties()
method gets called during a later screen update. | UIComponent | ||
Marks a component so that its measure()
method gets called during a later screen update. | UIComponent | ||
Marks the component so that the new state of the skin is set
during a later screen update. | SkinnableComponent | ||
Indicates whether an instance of the Object class is in the prototype chain of the object specified
as the parameter. | Object | ||
[override]
Given a data item, return the correct text a renderer
should display while taking the labelField
and labelFunction properties into account. | ListBase | ||
Converts a three-dimensional point of the three-dimensional display
object's (local) coordinates to a two-dimensional point in the Stage (global) coordinates. | DisplayObject | ||
Converts a Point object from local to content coordinates. | UIComponent | ||
Converts the point object from the display object's (local) coordinates to the
Stage (global) coordinates. | DisplayObject | ||
Returns true if cssState matches currentCSSState. | UIComponent | ||
Determines whether this instance is the same as, or is a subclass of,
the given type. | UIComponent | ||
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 | ||
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 | ||
Moves the component to a specified position within its parent. | UIComponent | ||
Propagates style changes to the children. | UIComponent | ||
Returns true if the chain of owner properties
points from child to this UIComponent. | UIComponent | ||
Called by Flex when a UIComponent object is added to or removed from a parent. | UIComponent | ||
Prepares an IFlexDisplayObject for printing. | UIComponent | ||
Indicates whether the specified property exists and is enumerable. | Object | ||
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 | ||
For each effect event, registers the EffectManager
as one of the event listeners. | UIComponent | ||
Removes all child DisplayObject instances from the child list of the DisplayObjectContainer instance. | DisplayObjectContainer | ||
Removes a listener from the EventDispatcher object. | EventDispatcher | ||
Removes a non-visual style client from this component instance. | UIComponent | ||
Replays the specified event. | UIComponent | ||
Raises a virtual keyboard. | InteractiveObject | ||
Resolves a child by using the id provided. | UIComponent | ||
[static]
Resumes the background processing of methods
queued by callLater(), after a call to
suspendBackgroundProcessing(). | UIComponent | ||
Sizes the object. | UIComponent | ||
Sets a layout constraint value, which is the same as
setting the constraint style for this component. | UIComponent | ||
Set the current state. | UIComponent | ||
Sets the focus to this component. | UIComponent | ||
Sets the coordinates that the element uses to draw on screen. | UIComponent | ||
Sets the layout size of the element. | UIComponent | ||
Sets the transform Matrix that is used to calculate the component's layout
size and position relative to its siblings. | UIComponent | ||
Sets the transform Matrix3D that is used to calculate the component's layout
size and position relative to its siblings. | UIComponent | ||
Sets the availability of a dynamic property for loop operations. | Object | ||
Sets a style property on this component instance. | UIComponent | ||
Called when the visible property changes. | UIComponent | ||
Lets the user drag the specified sprite. | Sprite | ||
Lets the user drag the specified sprite on a touch-enabled device. | Sprite | ||
Recursively stops the timeline execution of all MovieClips rooted at this object. | DisplayObjectContainer | ||
Ends the startDrag() method. | Sprite | ||
Ends the startTouchDrag() method, for use with touch-enabled devices. | Sprite | ||
Detects changes to style properties. | UIComponent | ||
Flex calls the stylesInitialized() method when
the styles for a component are first initialized. | UIComponent | ||
[static]
Blocks the background processing of methods
queued by callLater(),
until resumeBackgroundProcessing() is called. | UIComponent | ||
Returns the string representation of this object, formatted according to locale-specific conventions. | Object | ||
[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 | ||
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 | ||
Updates an item renderer for use or reuse. | SkinnableDataContainer | ||
Validates the position and size of children and draws other
visuals. | UIComponent | ||
Validate and update the properties and layout of this object
and redraw it, if necessary. | UIComponent | ||
Used by layout logic to validate the properties of a component
by calling the commitProperties() method. | UIComponent | ||
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 | ||
Handles both the valid and invalid events from a
validator assigned to this component. | UIComponent | ||
Returns the primitive value of the specified object. | Object | ||
Returns a box Matrix which can be passed to drawRoundRect()
as the rot parameter when drawing a vertical gradient. | UIComponent | ||
Checks whether an event listener is registered with this EventDispatcher object or any of
its ancestors for the specified event type. | EventDispatcher |
Styles are either common or associated with a specific theme. If the style is common, it can be used with any theme. If a style is associated with a specific theme, it can only be used if your application uses that theme.
Style | Description | Defined By | ||
---|---|---|---|---|
Type: uint Format: Color CSS Inheritance: Yes Theme: spark, mobile Language Version: ActionScript 3.0 Product Version: Flex 4 Runtime Versions: Flash10, AIR 1.5 The main color for a component. | SkinnableComponent | |||
cornerRadius | Type: Number Format: Length CSS Inheritance: No Theme: spark Language Version: ActionScript 3.0 Product Version: Flex 4 Runtime Versions: Flash10, AIR 1.5 Defines the radius of the TabBar buttons' top-left and top-right corners for the default TabBarButton skin. The default value is 4 . | TabBar | ||
Type: Number CSS Inheritance: No Theme: spark, mobile Language Version: ActionScript 3.0 Product Version: Flex 4 Runtime Versions: Flash10, AIR 1.5 The alpha of the focus ring for this component. | SkinnableDataContainer | |||
Type: uint Format: Color CSS Inheritance: Yes Theme: spark, mobile Language Version: ActionScript 3.0 Product Version: Flex 4 Runtime Versions: Flash10, AIR 1.5 Color of focus ring when the component is in focus. | SkinnableDataContainer |
This component uses skins made up of skin parts. Do not set the skin parts directly. The component's skin sets the skin parts.
To skin the component, implement a skin that defines the following states. Although you must implement all skin states, a skin state can be empty. An empty skin state specifies no changes to the default skin state.
TabBar | () | Constructor |
public function TabBar()
Language Version: | ActionScript 3.0 |
Product Version: | Flex 4 |
Runtime Versions: | Flash Player 10, AIR 1.5 |
Constructor.
<?xml version="1.0"?> <!-- Simple example to demonstrate the Spark TabBar --> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx"> <fx:Style> @namespace "library://ns.adobe.com/flex/spark"; TabBar ToggleButton:upAndSelected, TabBar ToggleButton:overAndSelected, TabBar ToggleButton:downAndSelected, TabBar ToggleButton:disabledAndSelected { chromeColor: #9999CC; color: #F00E34; } TabBar { chromeColor: #9999CC; color: #410FF5; cornerRadius:8; } </fx:Style> <fx:Script> <![CDATA[ import spark.events.IndexChangeEvent; private function changeSelection(event:IndexChangeEvent): void { selectionText.text = "Selected Item: " + TabBar(event.target).selectedItem; } ]]> </fx:Script> <s:Panel title="Spark TabBar Example" width="75%" height="75%" horizontalCenter="0" verticalCenter="0"> <s:Label text="Select an item below:" x="10" y="15" /> <s:TabBar id="viewMenu" x="10" y="40" width="320" change="changeSelection(event)"> <s:dataProvider> <s:ArrayCollection source="['Appetizers', 'Entrees', 'Desserts']" /> </s:dataProvider> </s:TabBar> <s:Label x="10" y="75" id="selectionText" /> </s:Panel> </s:Application>
Thu Dec 6 2018, 01:12 PM -08:00