# TileGroup Specification
----
## Summary and Background
----
TileGroup is a Group that has a TileLayout set on it by default. It exposes the public properties of the TileLayout so they can be set directly on the TileGroup rather than through its layout property.
## Usage Scenarios
----
The user wants to create a Group with a TileLayout in ActionScript by instantiating one object.
The user wants to create a Group with a TileLayout in MXML with a single tag.
## Detailed Description
----
VGroup/HGroup are currently available as convenience containers that define VerticalLayout/HorizontalLayout as their default layout and Group is configured with a BasicLayout by default. Having TileGroup will mean that each layout provided in Flex 4 will have an equivalent Group:
Group - BasicLayout
VGroup - VerticalLayout
HGroup - HorizontalLayout
TileGroup - TileLayout
The layout property of a TileGroup/VGroup/HGroup can not be changed and attempting to do so will result in a runtime error.
## API Description
----
package spark.components
{
public class TileGroup extends Group
{
//----------------------------------
// columnAlign
//----------------------------------
[Inspectable(category="General",
enumeration="left,justifyUsingGap,justifyUsingWidth",
defaultValue="left")]
/**
* @copy spark.layouts.TileLayout#columnAlign
*
* @default "left"
*/
public function get columnAlign():String
public function set columnAlign(value:String):void
//----------------------------------
// columnCount
//----------------------------------
Bindable("propertyChange")
Inspectable(category="General")
/**
* @copy spark.layouts.TileLayout#columnCount
*
* @default -1
*/
public function get columnCount():int
//----------------------------------
// columnWidth
//----------------------------------
Bindable("propertyChange")
Inspectable(category="General")
/**
* @copy spark.layouts.TileLayout#columnWidth
*
* @default 0
*/
public function get columnWidth():int
public function set columnWidth(value:int):void
//----------------------------------
// horizontalAlign
//----------------------------------
[Inspectable(category="General",
enumeration="left,center,right,justify,contentJustify",
defaultValue="left")]
/**
* @copy spark.layouts.TileLayout#horizontalAlign
*
* @default "justify"
*/
public function get horizontalAlign():String
public function set horizontalAlign(value:String):void
//----------------------------------
// horizontalGap
//----------------------------------
Bindable("propertyChange")
Inspectable(category="General")
/**
* @copy spark.layouts.TileLayout#horizontalGap
*
* @default 6
*/
public function get horizontalGap():int
public function set horizontalGap(value:int):void
//----------------------------------
// orientation
//----------------------------------
[Inspectable(category="General",
enumeration="rows,columns",
defaultValue="rows")]
/**
* @copy spark.layouts.TileLayout#orientation
*
* @default "rows"
*/
public function get orientation():String
public function set orientation(value:String):void
//----------------------------------
// requestedColumnCount
//----------------------------------
Inspectable(category="General")
/**
* @copy spark.layouts.TileLayout#requestedColumnCount
*
* @default -1
*/
public function get requestedColumnCount():int
public function set requestedColumnCount(value:int):void
//----------------------------------
// requestedRowCount
//----------------------------------
Inspectable(category="General")
/**
* @copy spark.layouts.TileLayout#requestedRowCount
*
* @default -1
*/
public function get requestedRowCount():int
public function set requestedRowCount(value:int):void
//----------------------------------
// rowAlign
//----------------------------------
[Inspectable(category="General",
enumeration="top,justifyUsingGap,justifyUsingHeight",
defaultValue="top")]
/**
* @copy spark.layouts.TileLayout#rowAlign
*
* @default "top"
*/
public function get rowAlign():String
public function set rowAlign(value:String):void
//----------------------------------
// rowCount
//----------------------------------
Bindable("propertyChange")
Inspectable(category="General")
/**
* @copy spark.layouts.TileLayout#rowCount
*
* @default -1
*/
public function get rowCount():int
//----------------------------------
// rowHeight
//----------------------------------
Bindable("propertyChange")
Inspectable(category="General")
/**
* @copy spark.layouts.TileLayout#rowHeight
*
* @default 0
*/
public function get rowHeight():int
public function set rowHeight(value:int):void
//----------------------------------
// verticalAlign
//----------------------------------
[Inspectable(category="General",
enumeration="top,bottom,middle,justify",
defaultValue="justify")]
/**
* @copy spark.layouts.TileLayout#verticalAlign
*
* @default "justify"
*/
public function get verticalAlign():String
public function set verticalAlign(value:String):void
//----------------------------------
// verticalGap
//----------------------------------
Bindable("propertyChange")
Inspectable(category="General")
/**
* @copy spark.layouts.TileLayout#verticalGap
*
* @default 6
*/
public function get verticalGap():int
public function set verticalGap(value:int):void
}
}
## B Features
----
None
## Examples and Usage
----
Instead of defining a Group with a TileLayout and changing properties on the layout:
<group>
<layout>
<tilelayout horizontalgap="5">
</tilelayout></layout>
...
</group>
You can use a TileGroup and change the layout properties directly on the TileGroup:
<tilegroup horizontalgap="5">
...
</tilegroup>
## Documentation
----
The majority of the documentation of TileGroup is copied from the TileLayout class using @copy.
----