class PopUpListView
package feathers.controls
extends FeathersControl › MeasureSprite › ValidatingSprite
implements IDataSelector<Dynamic>
Displays a Button
that may be triggered to display a ListView
as a
pop-up. The list view may be customized to display in different ways, such
as a drop-down, inside a Callout
, or as a modal overlay.
The following example creates a pop-up list, gives it a data provider, tells the item renderer how to interpret the data, and listens for when the selection changes:
var listView = new PopUpListView();
listView.dataProvider = new ArrayCollection(
[
{ text: "Milk" },
{ text: "Eggs" },
{ text: "Bread" },
{ text: "Steak" },
]);
listView.itemToText = (item:Dynamic) ->
{
return item.text;
};
listView.addEventListener(Event.CHANGE, (event:Event) ->
{
var list = cast(event.currentTarget, PopUpListView);
trace("PopUpListView changed: " + listView.selectedIndex + " " + listView.selectedItem.text);
});
this.addChild(list);
1.0.0
.See:
Constructor
Variables
dataProvider:IFlatCollection<Dynamic> = null
The collection of data displayed by the list view.
The following example passes in a data provider and tells the item renderer how to interpret the data:
listView.dataProvider = new ArrayCollection(
[
{ text: "Milk" },
{ text: "Eggs" },
{ text: "Bread" },
{ text: "Chicken" },
]);
listView.itemToText = (item:Dynamic) ->
{
return item.text;
};
1.0.0
.See:
itemRendererRecycler:DisplayObjectRecycler<Dynamic, ListViewItemState, DisplayObject> = DisplayObjectRecycler.withClass(ItemRenderer)
Manages item renderers used by the pop-up list view.
In the following example, the pop-up list view uses a custom item renderer class:
listView.itemRendererRecycler = DisplayObjectRecycler.withClass(CustomItemRenderer);
1.0.0
.popUpAdapter:IPopUpAdapter = null
Manages how the list view is displayed when it is opened and closed.
In the following example, a custom pop-up adapter is provided:
comboBox.popUpAdapter = new DropDownPopUpAdapter();
1.0.0
.buttonFactory:Void ‑> Button
Creates the button, which must be of type feathers.controls.Button
.
In the following example, a custom button factory is provided:
listView.buttonFactory = () ->
{
return new Button();
};
1.0.0
.See:
listViewFactory:Void ‑> ListView
Creates the list view that is displayed as a pop-up. The list view must
be of type feathers.controls.ListView
.
In the following example, a custom list view factory is provided:
listView.listViewFactory = () ->
{
return new ListView();
};
1.0.0
.See:
Methods
closeListView ():Void
Closes the pop-up list, if it is open.
The following example closes the pop-up list:
if(listView.open)
{
listView.closeListView();
}
1.0.0
.See:
dynamicitemToText (data:Dynamic):String
Converts an item to text to display within the pop-up ListView
, or
within the Button
, if the item is selected. By default, the
toString()
method is called to convert an item to text. This method
may be replaced to provide custom text.
For example, consider the following item:
{ text: "Example Item" }
If the ListView
should display the text "Example Item", a custom
implementation of itemToText()
might look like this:
listView.itemToText = (item:Dynamic) ->
{
return item.text;
};
1.0.0
.openListView ():Void
Opens the pop-up list, if it is not already open.
The following example opens the pop-up list:
if(!listView.open)
{
listView.openListView();
}
1.0.0
.See:
Static variables
staticread onlyCHILD_VARIANT_BUTTON:String = "popUpListView_button"
staticread onlyCHILD_VARIANT_LIST_VIEW:String = "popUpListView_listView"
The variant used to style the ListView
child component in a theme.
See: