Package | mx.collections |
Interface | public interface ICollectionView extends IEventDispatcher |
Implémenteurs | ListCollectionView |
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 9, AIR 1.1 |
ICollectionView
est une vue contenant une collection de données. La vue peut être modifiée de façon à afficher des données triées en fonction de divers critères ou des données filtrées, sans modifier les données sous-jacentes. Une interface IViewCursor permet d’accéder aux éléments présents dans une collection. Vous pouvez modifier la collection à l’aide des méthodes insert()
et remove()
de l’interface IViewCursor.
Une interface ICollectionView
peut être une vue contenant des données extraites à partir d’un emplacement distant. Lorsque vous implémentez cette interface pour des données susceptibles d’être distantes, vous devez envisager les situations où les données ne sont pas encore disponibles, signalées par l’erreur ItemPendingError
.
L’interface IList
constitue une alternative à l’interface ICollectionView
.
Eléments de l’API associés
Propriété | Défini par | ||
---|---|---|---|
filterFunction : Function
Fonction que la vue utilisera pour éliminer les éléments qui ne correspondent pas aux critères de la fonction. | ICollectionView | ||
length : int [lecture seule]
Nombre d’éléments présents dans cette vue. | ICollectionView | ||
sort : ISort
L’objet ISort qui sera appliqué à l’interface ICollectionView. | ICollectionView |
Méthode | Défini par | ||
---|---|---|---|
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Enregistre un objet écouteur d’événement auprès d’un objet EventDispatcher afin que l’écouteur soit averti d’un événement. | IEventDispatcher | ||
Indique en retour si la vue contient l’objet spécifié. | ICollectionView | ||
Crée une nouvelle interface IViewCursor fonctionnant avec cette vue. | ICollectionView | ||
Empêche la vue de distribuer les modifications apportées à la collection et aux éléments de la collection. | ICollectionView | ||
Distribue un événement dans le flux d’événements. | IEventDispatcher | ||
Active la mise à jour automatique. | ICollectionView | ||
Vérifie si des écouteurs sont enregistrés auprès de l’objet EventDispatcher pour un type spécifique d’événement. | IEventDispatcher | ||
itemUpdated(item:Object, property:Object = null, oldValue:Object = null, newValue:Object = null):void
Signale à la vue qu’un élément a été mis à jour. | ICollectionView | ||
Applique le tri et le filtre à la vue. | ICollectionView | ||
Supprime un écouteur de l’objet EventDispatcher. | IEventDispatcher | ||
Vérifie si un écouteur d’événement est enregistré auprès de cet objet EventDispatcher ou de ses ancêtres pour le type d’événement spécifié. | IEventDispatcher |
Evénement | Synthèse | Défini par | ||
---|---|---|---|---|
Distribué lorsque l’interface ICollectionView a été mise à jour. | ICollectionView |
filterFunction | propriété |
filterFunction:Function
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 9, AIR 1.1 |
Fonction que la vue utilisera pour éliminer les éléments qui ne correspondent pas aux critères de la fonction. Une fonction filterFunction doit présenter la signature suivante :
f(item:Object):BooleanOù la valeur de retour est
true
si l’élément spécifié doit rester dans la vue.
Si un filtre n’est pas pris en charge, Flex renvoie une erreur lors de l’accès à cette propriété. Pour que la vue soit mise à jour, vous devez appeler la méthode refresh()
après avoir défini la propriété filterFunction
.
Remarque : les implémentations Flex de l’interface ICollectionView extraient tous les éléments d’un emplacement distant avant d’exécuter la fonction de filtrage. Si vous utilisez la pagination, appliquez le filtre à la collection distante avant d’extraire les données.
Implémentation
public function get filterFunction():Function
public function set filterFunction(value:Function):void
Eléments de l’API associés
length | propriété |
length:int
[lecture seule] Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 9, AIR 1.1 |
Nombre d’éléments présents dans cette vue. 0 signifie qu’elle ne contient aucun élément et -1 signifie que la longueur est inconnue.
Implémentation
public function get length():int
sort | propriété |
sort:ISort
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 9, AIR 1.1 |
L’objet ISort qui sera appliqué à l’interface ICollectionView. Le fait de définir le tri n’actualise pas automatiquement la vue. Par conséquent, vous devez appeler la méthode refresh()
après avoir défini cette propriété. Si un tri n’est pas pris en charge, une erreur est renvoyée lors de l’accès à cette propriété.
Remarque : les implémentations Flex de l’interface ICollectionView extraient tous les éléments d’un emplacement distant avant de procéder au tri. Si vous utilisez la pagination avec une liste triée, appliquez le tri à la collection distante avant d’extraire les données.
Implémentation
public function get sort():ISort
public function set sort(value:ISort):void
Eléments de l’API associés
contains | () | méthode |
public function contains(item:Object):Boolean
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 9, AIR 1.1 |
Indique en retour si la vue contient l’objet spécifié. Contrairement aux méthodes IViewCursor.findxxx
, cette recherche aboutit uniquement si un élément correspondant exactement au paramètre est trouvé. Si un filtre est appliqué à la vue, cette méthode peut renvoyer false
, même si la collection sous-jacente contient bien l’élément.
Paramètres
item:Object — Objet à rechercher.
|
Boolean — true si après application du filtre éventuel, l’interface ICollectionView contient l’élément ; false dans le cas contraire.
|
createCursor | () | méthode |
public function createCursor():IViewCursor
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 9, AIR 1.1 |
Crée une nouvelle interface IViewCursor fonctionnant avec cette vue.
Valeur renvoyéeIViewCursor — Nouvelle implémentation IViewCursor.
|
disableAutoUpdate | () | méthode |
public function disableAutoUpdate():void
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 9, AIR 1.1 |
Empêche la vue de distribuer les modifications apportées à la collection et aux éléments de la collection. Empêche également la vue de mettre à jour les positions des éléments si les positions au sein de la collection changent. Les modifications sont mises en file d’attente et distribuées de façon appropriée après l’appel de la méthode enableAutoUpdate
. S’il y a plus d’événements de que mises à jour réalisées sur un élément unique, il se peut que la vue soit réinitialisée. La méthode disableAutoUpdate
fonctionne de manière cumulative : pour que la vue distribue les événements et soit actualisée, le nombre d’appels doit être identique au nombre d’appels de la méthode enableAutoUpdate
. Sachez que la méthode disableAutoUpdate
affecte uniquement les vues individuelles. Les modifications peuvent être détectées au coup par coup par les autres vues.
enableAutoUpdate | () | méthode |
public function enableAutoUpdate():void
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 9, AIR 1.1 |
Active la mise à jour automatique. Pour plus d’informations, voir disableAutoUpdate
.
Eléments de l’API associés
itemUpdated | () | méthode |
public function itemUpdated(item:Object, property:Object = null, oldValue:Object = null, newValue:Object = null):void
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 9, AIR 1.1 |
Signale à la vue qu’un élément a été mis à jour. Cette méthode est utile lorsque le contenu de la vue n’implémente pas l’interface IPropertyChangeNotifier
. Si l’appel de cette méthode inclut un paramètre property
, il est possible que la vue puisse optimiser son mécanisme de notification. Dans le cas contraire, elle peut simplement choisir d’actualiser l’ensemble de la vue.
Paramètres
item:Object — Elément mis à jour dans la vue.
| |
property:Object (default = null ) — Nom de la propriété mise à jour.
| |
oldValue:Object (default = null ) — Ancienne valeur de cette propriété (si la valeur de la propriété était null, il peut s’agir de l’ancienne valeur de l’élément).
| |
newValue:Object (default = null ) — Nouvelle valeur de cette propriété (si la valeur de la propriété était null, il n’est pas nécessaire de la spécifier, car l’élément est supposé correspondre à la nouvelle valeur).
|
Eléments de l’API associés
refresh | () | méthode |
public function refresh():Boolean
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 9, AIR 1.1 |
Applique le tri et le filtre à la vue. L’interface ICollectionView ne détecte pas automatiquement les modifications apportées à un tri ou à un filtre. Par conséquent, vous devez appeler la méthode refresh()
pour actualiser la vue après avoir défini la propriété sort
ou filterFunction
. Si l’implémentation ICollectionView implémente également l’interface IMXMLObject, vous devez appeler la méthode refresh()
à partir de la méthode initialized()
.
Renvoie true
si l’actualisation aboutit et false
si le tri n’est pas encore terminé (c’est-à-dire si des éléments sont toujours en attente). Un client de la vue doit attendre un événement CollectionEvent dont la propriété CollectionEventKind.REFRESH
est définie sur kind
pour faire en sorte que l’opération refresh()
aboutisse.
Boolean — true si la méthode refresh() est terminée et false si cela n’est pas le cas.
|
collectionChange | Evénement |
mx.events.CollectionEvent
propriété CollectionEvent.type =
mx.events.CollectionEvent.COLLECTION_CHANGE
Version du langage: | ActionScript 3.0 |
Version du produit: | Flex 3 |
Versions du moteur d’exécution: | Flash Player 9, AIR 1.1 |
Distribué lorsque l’interface ICollectionView a été mise à jour.
La constante CollectionEvent.COLLECTION_CHANGE définit la valeur de la propriététype
de l’objet d’événement d’un événement distribué lorsqu’une collection a changé.
Les valeurs des propriétés de l’objet d’événement sont les suivantes : Toutes les propriétés ne sont pas pertinentes pour chaque catégorie d’événements. Pour plus d’informations, voir les descriptions détaillées des propriétés.
Propriété | Valeur |
---|---|
bubbles | false |
cancelable | false |
currentTarget | Objet définissant l’écouteur d’événement qui traite l’événement. Par exemple, si vous utilisez myButton.addEventListener() pour enregistrer un écouteur d’événement, myButton est la valeur de currentTarget . |
items | Tableau d’objets contenant des informations sur les éléments affectés par l’événement. Le contenu de ce champ dépend du type d’événement. Pour plus d’informations, voir la propriété items . |
kind | Type d’événement. Les valeurs possibles sont définies dans la classe CollectionEventKind sous forme de constantes. |
location | Emplacement dans la collection cible du ou des éléments spécifiés dans la propriété items . |
oldLocation | Ancien emplacement dans la collection de l’élément spécifié dans la propriété items . |
target | Objet qui a distribué l’événement (il ne s’agit pas toujours de l’objet qui écoute l’événement). Pour accéder systématiquement à l’objet qui écoute l’événement, utilisez la propriété currentTarget . |
type | CollectionEvent.COLLECTION_CHANGE |
Tue Jun 12 2018, 09:30 AM Z