Packagefeathers.controls
Classpublic class ImageLoader
InheritanceImageLoader Inheritance FeathersControl Inheritance starling.display.Sprite

Product Version : Feathers 1.0.0

Displays an image, either from an existing Texture object or from an image file loaded with its URL. Supported image files include ATF format and any bitmap formats that may be loaded by flash.display.Loader, including JPG, GIF, and PNG.

The following example passes a URL to an image loader and listens for its complete event:

var loader:ImageLoader = new ImageLoader();
loader.source = "http://example.com/example.png";
loader.addEventListener( Event.COMPLETE, loader_completeHandler );
this.addChild( loader );

The following example passes an existing texture to an image loader:

var loader:ImageLoader = new ImageLoader();
loader.source = Texture.fromBitmap( bitmap );
this.addChild( loader );



Public Properties
 PropertyDefined By
 InheritedaddedEffect : Function
An optional effect that is activated when the component is added to the stage.
FeathersControl
  asyncTextureUpload : Boolean
Determines if textures loaded from URLs are uploaded asynchronously or not.
ImageLoader
 InheriteddefaultTextEditorFactory : Function
[static] A function used by all UI controls that support text editor to create an ITextEditor instance.
FeathersControl
 InheriteddefaultTextRendererFactory : Function
[static] A function used by all UI controls that support text renderers to create an ITextRenderer instance.
FeathersControl
  delayTextureCreation : Boolean
Determines if a loaded bitmap may be converted to a texture immediately after loading.
ImageLoader
 Inheriteddepth : int
[read-only] The component's depth in the display list, relative to the stage.
FeathersControl
 InheritedeffectsSuspended : Boolean
[read-only] Indicates if effects have been suspended.
FeathersControl
 InheritedexplicitHeight : Number
[read-only] The height value explicitly set by passing a value to the height setter or by calling the setSize() function.
FeathersControl
 InheritedexplicitMaxHeight : Number
[read-only] The maximum height value explicitly set by passing a value to the maxHeight setter.
FeathersControl
 InheritedexplicitMaxWidth : Number
[read-only] The maximum width value explicitly set by passing a value to the maxWidth setter.
FeathersControl
 InheritedexplicitMinHeight : Number
[read-only] The minimum height value explicitly set by passing a value to the minHeight setter.
FeathersControl
 InheritedexplicitMinWidth : Number
[read-only] The minimum width value explicitly set by passing a value to the minWidth setter.
FeathersControl
 InheritedexplicitWidth : Number
[read-only] The width value explicitly set by passing a value to the width setter or to the setSize() method.
FeathersControl
 InheritedfocusInEffect : Function
An optional effect that is activated when the component receives focus.
FeathersControl
 InheritedfocusManager : IFocusManager
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The current focus manager for this component.
FeathersControl
 InheritedfocusOutEffect : Function
An optional effect that is activated when the component loses focus.
FeathersControl
 InheritedfocusOwner : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. Used for associating focusable display objects that are not direct children with an "owner" focusable display object, such as pop-ups.
FeathersControl
  globalStyleProvider : IStyleProvider
[static] The default IStyleProvider for all ImageLoader components.
ImageLoader
 Inheritedheight : Number
[override] The height of the component, in pixels.
FeathersControl
 InheritedhideEffect : Function
An optional effect that is activated when the component is hidden.
FeathersControl
 InheritedincludeInLayout : Boolean
Determines if the ILayout should use this object or ignore it.
FeathersControl
 InheritedisCreated : Boolean
[read-only] Determines if the component has been initialized and validated for the first time.
FeathersControl
 InheritedisEnabled : Boolean
Indicates whether the control is interactive or not.
FeathersControl
 InheritedisFocusEnabled : Boolean
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. Determines if this component can receive focus.
FeathersControl
 InheritedisInitialized : Boolean
[read-only] Determines if the component has been initialized yet.
FeathersControl
  isLoaded : Boolean
[read-only] Indicates if the source has completed loading, if the source is a URL.
ImageLoader
 InheritedisQuickHitAreaEnabled : Boolean
Similar to mouseChildren on the classic display list.
FeathersControl
 InheritedisShowingFocus : Boolean
[read-only] The implementation of this method is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. Indicates if the showFocus() method has been called on the object when it has focus.
FeathersControl
 InheritedlayoutData : ILayoutData
Extra parameters associated with this display object that will be used by the layout algorithm.
FeathersControl
  loaderContext : LoaderContext
If the texture is loaded using flash.display.Loader, a custom flash.system.LoaderContext may optionally be provided.
ImageLoader
 InheritedmaintainTouchFocus : Boolean
[read-only] The implementation of this method is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. If true, the display object should remain in focus, even if something else is touched.
FeathersControl
 InheritedmaxHeight : Number
The maximum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedmaxWidth : Number
The maximum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedminHeight : Number
The minimum recommended height to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedminTouchHeight : Number
If using isQuickHitAreaEnabled, and the hit area's height is smaller than this value, it will be expanded.
FeathersControl
 InheritedminTouchWidth : Number
If using isQuickHitAreaEnabled, and the hit area's width is smaller than this value, it will be expanded.
FeathersControl
 InheritedminWidth : Number
The minimum recommended width to be used for self-measurement and, optionally, by any code that is resizing this component.
FeathersControl
 InheritedmoveEffect : Function
An optional effect that is activated when the component is moved to a new position.
FeathersControl
 InheritednextDownFocus : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The next object that will receive focus when Keyboard.DOWN is pressed at KeyLocation.D_PAD and a focus manager is enabled.
FeathersControl
 InheritednextLeftFocus : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The next object that will receive focus when Keyboard.LEFT is pressed at KeyLocation.D_PAD and a focus manager is enabled.
FeathersControl
 InheritednextRightFocus : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The next object that will receive focus when Keyboard.RIGHT is pressed at KeyLocation.D_PAD and a focus manager is enabled.
FeathersControl
 InheritednextTabFocus : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The next object that will receive focus when the tab key is pressed when a focus manager is enabled.
FeathersControl
 InheritednextUpFocus : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The next object that will receive focus when Keyboard.UP is pressed at KeyLocation.D_PAD and a focus manager is enabled.
FeathersControl
  originalSourceHeight : Number
[read-only] The original height of the source content, in pixels.
ImageLoader
  originalSourceWidth : Number
[read-only] The original width of the source content, in pixels.
ImageLoader
 InheritedpreviousTabFocus : IFocusDisplayObject
The implementation of this property is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface. The previous object that will receive focus when the tab key is pressed while holding shift when a focus manager is enabled.
FeathersControl
 InheritedresizeEffect : Function
An optional effect that is activated when the component is resized with new dimensions.
FeathersControl
  scaleFactor : Number
The scale factor value to pass to Texture.fromBitmapData() when creating a texture loaded from a URL.
ImageLoader
 InheritedshowEffect : Function
An optional effect that is activated when the component is shown.
FeathersControl
  source : Object
The Texture to display, or a URL pointing to an image file.
ImageLoader
  style : MeshStyle
The style that is used to render the loader's image.
ImageLoader
 InheritedstyleName : String
The concatenated styleNameList, with values separated by spaces.
FeathersControl
 InheritedstyleNameList : TokenList
[read-only] Contains a list of all "styles" assigned to this control.
FeathersControl
 InheritedstyleProvider : IStyleProvider
When a component initializes, a style provider may be used to set properties that affect the component's visual appearance.
FeathersControl
  textureCache : TextureCache
An optional cache for textures.
ImageLoader
  textureFormat : String
The texture format to use when creating a texture loaded from a URL.
ImageLoader
  textureQueueDuration : Number
If delayTextureCreation is true and the duration is not Number.POSITIVE_INFINITY, the loader will be added to a queue where the textures are uploaded to the GPU in sequence to avoid significantly affecting performance.
ImageLoader
  textureScale : Number
Scales the texture dimensions during measurement, but does not set the texture's scale factor.
ImageLoader
 InheritedtoolTip : String
Text to display in a tool tip to when hovering over this component, if the ToolTipManager is enabled.
FeathersControl
 Inheritedwidth : Number
[override] The width of the component, in pixels.
FeathersControl
Protected Properties
 PropertyDefined By
 InheritedactualHeight : Number = 0
The final height value that should be used for layout.
FeathersControl
 InheritedactualMinHeight : Number = 0
The final minimum height value that should be used for layout.
FeathersControl
 InheritedactualMinWidth : Number = 0
The final minimum width value that should be used for layout.
FeathersControl
 InheritedactualWidth : Number = 0
The final width value that should be used for layout.
FeathersControl
 InheriteddefaultStyleProvider : IStyleProvider
[read-only] When the FeathersControl constructor is called, the styleProvider property is set to this value.
FeathersControl
  image : Image
The internal starling.display.Image child.
ImageLoader
  loader : Loader
The internal flash.display.Loader used to load textures from URLs.
ImageLoader
  urlLoader : URLLoader
The internal flash.net.URLLoader used to load raw data from URLs.
ImageLoader
Public Methods
 MethodDefined By
  
Constructor.
ImageLoader
 Inherited
getBounds(targetSpace:DisplayObject, resultRect:Rectangle = null):Rectangle
[override] Feathers components use an optimized getBounds() implementation that may sometimes behave differently than regular Starling display objects.
FeathersControl
 Inherited
hideFocus():void
The implementation of this method is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface.
FeathersControl
 Inherited
If the component has not yet initialized, initializes immediately.
FeathersControl
 Inherited
invalidate(flag:String):void
Call this function to tell the UI control that a redraw is pending.
FeathersControl
 Inherited
isInvalid(flag:String = null):Boolean
Indicates whether the control is pending validation or not.
FeathersControl
 Inherited
move(x:Number, y:Number):void
Sets both the x and the y positions of the control in a single function call.
FeathersControl
 Inherited
removeFromParentWithEffect(effect:Function, dispose:Boolean = false):void
Plays an effect before removing the component from its parent.
FeathersControl
 Inherited
Resets the styleProvider property to its default value, which is usually the global style provider for the component.
FeathersControl
 Inherited
Indicates that effects should be re-activated after being suspended.
FeathersControl
 Inherited
setSize(width:Number, height:Number):void
Sets both the width and the height of the control in a single function call.
FeathersControl
 Inherited
showFocus():void
The implementation of this method is provided for convenience, but it cannot be used unless a subclass implements the IFocusDisplayObject interface.
FeathersControl
 Inherited
Indicates that effects should not be activated temporarily.
FeathersControl
 Inherited
validate():void
Immediately validates the display object, if it is invalid.
FeathersControl
Protected Methods
 MethodDefined By
  
If the component's dimensions have not been set explicitly, it will measure its content and determine an ideal size for itself.
ImageLoader
 Inherited
clearInvalidationFlag(flag:String):void
Clears an invalidation flag.
FeathersControl
 Inherited
draw():void
Override to customize layout and to adjust properties of children.
FeathersControl
 Inherited
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
 Inherited
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
 Inherited
The next style that is set will not be restricted.
FeathersControl
 Inherited
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
 Inherited
processStyleRestriction(key:Object):Boolean
Used by setters for properties that are considered "styles" to determine if the setter has been called directly on the component or from a style provider.
FeathersControl
 Inherited
Updates the focus indicator skin by showing or hiding it and adjusting its position and dimensions.
FeathersControl
 Inherited
saveMeasurements(width:Number, height:Number, minWidth:Number = 0, minHeight:Number = 0):Boolean
Saves the dimensions and minimum dimensions calculated for the component.
FeathersControl
 Inherited
setInvalidationFlag(flag:String):void
Sets an invalidation flag.
FeathersControl
 Inherited
setSizeInternal(width:Number, height:Number, canInvalidate:Boolean):Boolean
Sets the width and height of the control, with the option of invalidating or not.
FeathersControl
Events
 Event Summary Defined By
  Dispatched when the source finishes loading, if the source is a URL.ImageLoader
 InheritedDispatched after the component has validated for the first time.FeathersControl
 InheritedDispatched after initialize() has been called, but before the first time that draw() has been called.FeathersControl
  Dispatched if an IO error occurs while loading the source content.ImageLoader
  Dispatched periodically as the source loads, if the source is a URL.ImageLoader
 InheritedDispatched when the width or height of the control changes.FeathersControl
  Dispatched if a security error occurs while loading the source content.ImageLoader
Styles
 StyleDefined By
  
color : uint
The tint value to use on the internal starling.display.Image.
ImageLoader
  
errorTexture : Texture
A texture to display when a URL source cannot be loaded for any reason.
ImageLoader
 Inherited
focusIndicatorSkin : DisplayObject
If this component supports focus, this optional skin will be displayed above the component when showFocus() is called.
FeathersControl
 Inherited
focusPadding : Number
Quickly sets all focus padding properties to the same value.
FeathersControl
 Inherited
The minimum space, in pixels, between the object's bottom edge and the bottom edge of the focus indicator skin.
FeathersControl
 Inherited
The minimum space, in pixels, between the object's left edge and the left edge of the focus indicator skin.
FeathersControl
 Inherited
The minimum space, in pixels, between the object's right edge and the right edge of the focus indicator skin.
FeathersControl
 Inherited
The minimum space, in pixels, between the object's top edge and the top edge of the focus indicator skin.
FeathersControl
  
The location where the content is aligned horizontally (on the x-axis) when its width is larger or smaller than the width of the ImageLoader.
ImageLoader
  
loadingTexture : Texture
A texture to display while a URL source is loading.
ImageLoader
  
Determines if the aspect ratio of the texture is maintained when the dimensions of the ImageLoader are changed manually and the new dimensions have a different aspect ratio than the texture.
ImageLoader
  
padding : Number
Quickly sets all padding properties to the same value.
ImageLoader
  
paddingBottom : Number
The minimum space, in pixels, between the control's bottom edge and the control's content.
ImageLoader
  
paddingLeft : Number
The minimum space, in pixels, between the control's left edge and the control's content.
ImageLoader
  
paddingRight : Number
The minimum space, in pixels, between the control's right edge and the control's content.
ImageLoader
  
paddingTop : Number
The minimum space, in pixels, between the control's top edge and the control's content.
ImageLoader
  
pixelSnapping : Boolean
The pixelSnapping value to use on the internal starling.display.Image.
ImageLoader
  
scale9Grid : Rectangle
The scale9Grid value to use on the internal starling.display.Image.
ImageLoader
  
scaleContent : Boolean
Determines if the content will be scaled if the dimensions of the ImageLoader are changed.
ImageLoader
  
scaleMode : String
Determines how the texture is scaled if scaleContent and maintainAspectRatio are both set to true.
ImageLoader
  
The texture smoothing value to use on the internal starling.display.Image.
ImageLoader
  
tileGrid : Rectangle
The tileGrid value to use on the internal starling.display.Image.
ImageLoader
  
verticalAlign : String
The location where the content is aligned vertically (on the y-axis) when its height is larger or smaller than the height of the ImageLoader.
ImageLoader
Public Constants
 ConstantDefined By
 InheritedINVALIDATION_FLAG_ALL : String = "all"
[static] Flag to indicate that everything is invalid and should be redrawn.
FeathersControl
 InheritedINVALIDATION_FLAG_DATA : String = "data"
[static] Invalidation flag to indicate that the primary data displayed by the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_FOCUS : String = "focus"
[static] Invalidation flag to indicate that the focus of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_LAYOUT : String = "layout"
[static] Invalidation flag to indicate that the layout of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SCROLL : String = "scroll"
[static] Invalidation flag to indicate that the scroll position of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SELECTED : String = "selected"
[static] Invalidation flag to indicate that the selection of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SIZE : String = "size"
[static] Invalidation flag to indicate that the dimensions of the UI control have changed.
FeathersControl
 InheritedINVALIDATION_FLAG_SKIN : String = "skin"
[static] Invalidation flag to indicate that the skin of the UI control has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_STATE : String = "state"
[static] Invalidation flag to indicate that the state has changed.
FeathersControl
 InheritedINVALIDATION_FLAG_STYLES : String = "styles"
[static] Invalidation flag to indicate that the styles or visual appearance of the UI control has changed.
FeathersControl
Property Detail
asyncTextureUploadproperty
asyncTextureUpload:Boolean

Determines if textures loaded from URLs are uploaded asynchronously or not.

Note: depending on the version of AIR and the platform it is running on, textures may be uploaded synchronously, even when this property is true.

In the following example, the texture will be uploaded synchronously:

loader.asyncTextureUpload = false;

The default value is true.


Implementation
    public function get asyncTextureUpload():Boolean
    public function set asyncTextureUpload(value:Boolean):void
delayTextureCreationproperty 
delayTextureCreation:Boolean

Determines if a loaded bitmap may be converted to a texture immediately after loading. If true, the loaded bitmap will be saved until this property is set to false, and only then it will be used to create the texture.

This property is intended to be used while a parent container, such as a List, is scrolling in order to keep scrolling as smooth as possible. Creating textures is expensive and performance can be affected by it. Set this property to true when the List dispatches FeathersEventType.SCROLL_START and set back to false when the List dispatches FeathersEventType.SCROLL_COMPLETE. You may also need to set to false if the isScrolling property of the List is true before you listen to those events.

In the following example, the image loader's texture creation is delayed:

loader.delayTextureCreation = true;

The default value is false.


Implementation
    public function get delayTextureCreation():Boolean
    public function set delayTextureCreation(value:Boolean):void

See also

globalStyleProviderproperty 
public static var globalStyleProvider:IStyleProvider

The default IStyleProvider for all ImageLoader components.

The default value is null.

See also

imageproperty 
protected var image:Image

The internal starling.display.Image child.

isLoadedproperty 
isLoaded:Boolean  [read-only]

Indicates if the source has completed loading, if the source is a URL. Always returns true when the source is a texture.

In the following example, we check if the image loader's source has finished loading:

if( loader.isLoaded )
{
    //do something
}


Implementation
    public function get isLoaded():Boolean
loaderproperty 
protected var loader:Loader

The internal flash.display.Loader used to load textures from URLs.

loaderContextproperty 
loaderContext:LoaderContext

If the texture is loaded using flash.display.Loader, a custom flash.system.LoaderContext may optionally be provided.

In the following example, a custom loader context is provided:

var context:LoaderContext = new LoaderContext();
context.loadPolicyFile = true;
loader.loaderContext = context;


Implementation
    public function get loaderContext():LoaderContext
    public function set loaderContext(value:LoaderContext):void

See also

originalSourceHeightproperty 
originalSourceHeight:Number  [read-only]

The original height of the source content, in pixels. This value will be 0 until the source content finishes loading. If the source is a texture, this value will be 0 until the ImageLoader validates.


Implementation
    public function get originalSourceHeight():Number
originalSourceWidthproperty 
originalSourceWidth:Number  [read-only]

The original width of the source content, in pixels. This value will be 0 until the source content finishes loading. If the source is a texture, this value will be 0 until the ImageLoader validates.


Implementation
    public function get originalSourceWidth():Number
scaleFactorproperty 
scaleFactor:Number

The scale factor value to pass to Texture.fromBitmapData() when creating a texture loaded from a URL.

In the following example, the image loader's scale factor is customized:

loader.scaleFactor = 2;

The default value is 1.


Implementation
    public function get scaleFactor():Number
    public function set scaleFactor(value:Number):void
sourceproperty 
source:Object

The Texture to display, or a URL pointing to an image file. Supported image files include ATF format and any bitmap formats that may be loaded by flash.display.Loader, including JPG, GIF, and PNG.

In the following example, the image loader's source is set to a texture:

loader.source = Texture.fromBitmap( bitmap );

In the following example, the image loader's source is set to the URL of a PNG image:

loader.source = "http://example.com/example.png";

The default value is null.


Implementation
    public function get source():Object
    public function set source(value:Object):void

See also

styleproperty 
style:MeshStyle

The style that is used to render the loader's image.

In the following example, the loader uses a custom style:

loader.style = new CustomMeshStyle();

The default value is null.


Implementation
    public function get style():MeshStyle
    public function set style(value:MeshStyle):void
textureCacheproperty 
textureCache:TextureCache

An optional cache for textures.

In the following example, a cache is provided for textures:

var cache:TextureCache = new TextureCache(30);
loader1.textureCache = cache;
loader2.textureCache = cache;

Warning: the textures in the cache will not be disposed automatically. When the cache is no longer needed (such as when the ImageLoader components have all been disposed), you must call the dispose() method on the TextureCache. Failing to do so will result in a serious memory leak.

The default value is null.


Implementation
    public function get textureCache():TextureCache
    public function set textureCache(value:TextureCache):void
textureFormatproperty 
textureFormat:String

The texture format to use when creating a texture loaded from a URL.

In the following example, the image loader's texture format is set to a custom value:

loader.textureFormat = Context3DTextureFormat.BGRA_PACKED;

The default value is flash.display3d.Context3DTextureFormat.BGRA.


Implementation
    public function get textureFormat():String
    public function set textureFormat(value:String):void

See also

textureQueueDurationproperty 
textureQueueDuration:Number

If delayTextureCreation is true and the duration is not Number.POSITIVE_INFINITY, the loader will be added to a queue where the textures are uploaded to the GPU in sequence to avoid significantly affecting performance. Useful for lists where many textures may need to be uploaded during scrolling.

If the duration is Number.POSITIVE_INFINITY, the default value, the texture will not be uploaded until delayTextureCreation is set to false. In this situation, the loader will not be added to the queue, and other loaders with a duration won't be affected.

In the following example, the image loader's texture creation is delayed by half a second:

loader.delayTextureCreation = true;
loader.textureQueueDuration = 0.5;

The default value is Number.POSITIVE_INFINITY.


Implementation
    public function get textureQueueDuration():Number
    public function set textureQueueDuration(value:Number):void

See also

textureScaleproperty 
textureScale:Number

Scales the texture dimensions during measurement, but does not set the texture's scale factor. Useful for UI that should scale based on screen density or resolution without accounting for contentScaleFactor.

In the following example, the image loader's texture scale is customized:

loader.textureScale = 0.5;

The default value is 1.


Implementation
    public function get textureScale():Number
    public function set textureScale(value:Number):void
urlLoaderproperty 
protected var urlLoader:URLLoader

The internal flash.net.URLLoader used to load raw data from URLs.

Constructor Detail
ImageLoader()Constructor
public function ImageLoader()

Constructor.

Method Detail
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 saveMeasurements() 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.

Returns
Boolean
Event Detail
complete Event
Event Object Type: starling.events.Event
Event.type property = starling.events.Event.COMPLETE

Dispatched when the source finishes loading, if the source is a URL. This event is not dispatched when the source is a texture.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
currentTargetThe 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.
datanull
targetThe 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.

ioError Event  
Event Object Type: starling.events.Event
Event.type property = starling.events.Event.IO_ERROR

Dispatched if an IO error occurs while loading the source content.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
currentTargetThe 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.
dataThe flash.events.IOErrorEvent dispatched by the loader.
targetThe 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.

progress Event  
Event Object Type: starling.events.Event
Event.type property = feathers.events.FeathersEventType.PROGRESS

Dispatched periodically as the source loads, if the source is a URL. This event is not dispatched when the source is a texture.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
currentTargetThe 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.
dataA value between 0.0 and 1.0 to indicate how much image data has loaded.
targetThe 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.

The FeathersEventType.PROGRESS event type is used by Feathers classes with long-running tasks to indicate that progress has been made, but the task is incomplete.
securityError Event  
Event Object Type: starling.events.Event
Event.type property = starling.events.Event.SECURITY_ERROR

Dispatched if a security error occurs while loading the source content.

The properties of the event object have the following values:

PropertyValue
bubblesfalse
currentTargetThe 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.
dataThe flash.events.SecurityErrorEvent dispatched by the loader.
targetThe 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.

Style Detail
verticalAlignstyle
verticalAlign:String

The location where the content is aligned vertically (on the y-axis) when its height is larger or smaller than the height of the ImageLoader.

If the scaleContent property is set to true, the verticalAlign property is ignored.

The following example aligns the content to the bottom:

loader.verticalAlign = VerticalAlign.BOTTOM;

Note: The VerticalAlign.JUSTIFY constant is not supported.

The default value is feathers.layout.VerticalAlign.TOP.

See also

tileGridstyle 
tileGrid:Rectangle

The tileGrid value to use on the internal starling.display.Image.

In the following example, the image loader's tileGrid is set to a custom value:

loader.tileGrid = Rectangle();

The default value is null.

See also

textureSmoothingstyle 
textureSmoothing:String

The texture smoothing value to use on the internal starling.display.Image.

In the following example, the image loader's smoothing is set to a custom value:

loader.textureSmoothing = TextureSmoothing.NONE;

The default value is starling.textures.TextureSmoothing.BILINEAR.

See also

scaleModestyle 
scaleMode:String

Determines how the texture is scaled if scaleContent and maintainAspectRatio are both set to true. See the starling.utils.ScaleMode class for details about each scaling mode.

If the scaleContent property is set to false, or the maintainAspectRatio property is set to false, the scaleMode property is ignored.

In the following example, the image loader's scale mode is changed:

loader.scaleMode = ScaleMode.NO_BORDER;

The default value is starling.utils.ScaleMode.SHOW_ALL.

See also

scaleContentstyle 
scaleContent:Boolean

Determines if the content will be scaled if the dimensions of the ImageLoader are changed.

In the following example, the image loader's content is not scaled:

loader.scaleContent = false;

The default value is true.

See also

scale9Gridstyle 
scale9Grid:Rectangle

The scale9Grid value to use on the internal starling.display.Image.

If this property is not null, the maintainAspectRatio property will be ignored.

In the following example, the image loader's scale9Grid is set to a custom value:

loader.scale9Grid = Rectangle(2, 3, 7, 12);

The default value is null.

See also

pixelSnappingstyle 
pixelSnapping:Boolean

The pixelSnapping value to use on the internal starling.display.Image.

In the following example, the image loader's pixelSnapping is disabled:

loader.pixelSnapping = false;

The default value is true.

See also

paddingLeftstyle 
paddingLeft:Number

The minimum space, in pixels, between the control's left edge and the control's content. Value may be negative to extend the content outside the edges of the control. Useful for skinning.

In the following example, the image loader's left padding is set to 20 pixels:

loader.paddingLeft = 20;

The default value is 0.

See also

paddingBottomstyle 
paddingBottom:Number

The minimum space, in pixels, between the control's bottom edge and the control's content. Value may be negative to extend the content outside the edges of the control. Useful for skinning.

In the following example, the image loader's bottom padding is set to 20 pixels:

loader.paddingBottom = 20;

The default value is 0.

See also

paddingRightstyle 
paddingRight:Number

The minimum space, in pixels, between the control's right edge and the control's content. Value may be negative to extend the content outside the edges of the control. Useful for skinning.

In the following example, the image loader's right padding is set to 20 pixels:

loader.paddingRight = 20;

The default value is 0.

See also

paddingTopstyle 
paddingTop:Number

The minimum space, in pixels, between the control's top edge and the control's content. Value may be negative to extend the content outside the edges of the control. Useful for skinning.

In the following example, the image loader's top padding is set to 20 pixels:

loader.paddingTop = 20;

The default value is 0.

See also

paddingstyle 
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 image loader's padding is set to 20 pixels on all sides:

loader.padding = 20;

The default value is 0.

See also

maintainAspectRatiostyle 
maintainAspectRatio:Boolean

Determines if the aspect ratio of the texture is maintained when the dimensions of the ImageLoader are changed manually and the new dimensions have a different aspect ratio than the texture.

If the scaleContent property is set to false or if the scale9Grid property is not null, the maintainAspectRatio property is ignored.

In the following example, the image loader's aspect ratio is not maintained:

loader.maintainAspectRatio = false;

The default value is true.

See also

horizontalAlignstyle 
horizontalAlign:String

The location where the content is aligned horizontally (on the x-axis) when its width is larger or smaller than the width of the ImageLoader.

If the scaleContent property is set to true, the horizontalAlign property is ignored.

The following example aligns the content to the right:

loader.horizontalAlign = HorizontalAlign.RIGHT;

Note: The HorizontalAlign.JUSTIFY constant is not supported.

The default value is feathers.layout.HorizontalAlign.LEFT.

See also

errorTexturestyle 
errorTexture:Texture

A texture to display when a URL source cannot be loaded for any reason.

In the following example, the image loader's error texture is customized:

loader.source = "http://example.com/example.png";
loader.errorTexture = texture;

The default value is null.

See also

loadingTexturestyle 
loadingTexture:Texture

A texture to display while a URL source is loading.

In the following example, the image loader's loading texture is customized:

loader.source = "http://example.com/example.png";
loader.loadingTexture = texture;

The default value is null.

See also

colorstyle 
color:uint

The tint value to use on the internal starling.display.Image.

In the following example, the image loader's texture color is customized:

loader.color = 0xff00ff;

The default value is 0xffffff.

See also