spark.collectionsSort Fournit les informations de tri requises pour réaliser un tri dans une vue existante (interface ICollectionView ou classe implémentant l’interface).The <s:Sort> tag has the following attributes:

  <s:Sort
  Properties
  compareFunction="Internal compare function"
  fields="null"
  unique="false | true"
  />
  

In case items have inconsistent data types or items have complex data types, use of default built-in compare functions is not desired. Inconsistent sort result may occur in such cases. To avoid such problem, provide custom compare function and/or make item types consistent.

]]>
mx.collections:ISortmx.styles:AdvancedStyleClient Fournit les informations de tri requises pour réaliser un tri dans une vue existante (interface ICollectionView ou classe implémentant l’interface). Après avoir affecté une occurrence Sort à la propriété sort de la vue, vous devez appeler la méthode refresh() de la vue pour appliquer les critères de tri.

Le tri est généralement défini pour des collections d’éléments complexes, c’est-à-dire pour des collections dans lesquelles le tri est réalisé sur une ou plusieurs propriétés des objets de la collection. L’exemple suivant illustre cette utilisation :


     var col:ICollectionView = new ArrayCollection();
     // In the real world, the collection would have more than one item.
     col.addItem({first:"Anders", last:"Dickerson"});
 
     // Create the Sort instance.
     var sort:ISort = new Sort();
 
     // Set the sort field; sort on the last name first, first name second.
     var sortfieldLastName:ISortField = new SortField("last",true);
     var sortfieldFirstName:ISortField = new SortField("first",true);
 
     // Set the locale style to "en-US" to cause the strings
     // to be ordered according to the rules for English as used in the USA.
     sortfieldLastName.setStyle("locale","en-US");
     sortfieldFirstName.setStyle("locale","en-US");
     sort.fields = [sortfieldLastName, sortfieldFirstName];
 
     // Assign the Sort object to the view.
     col.sort = sort;
 
     // Apply the sort to the collection.
     col.refresh();
  

Dans certaines situations, la collection contient des éléments simples de type String, Date, Boolean, etc. Dans ce cas, appliquez le tri directement au type simple. Lorsque vous réalisez un tri pour des éléments simples, utilisez un seul champ de tri et spécifiez la valeur null pour le (premier) paramètre name du constructeur d’objet SortField. Par exemple :


     import mx.collections.ArrayCollection;
     import spark.collections.Sort;
     import spark.collections.SortField;
 
     var col:ICollectionView = new ArrayCollection();
     col.addItem("California");
     col.addItem("Arizona");
     var sort:Sort = new Sort();
 
     // There is only one sort field, so use a null 
     // first parameter. 
     var sortfield:SortField = new SortField("null",true);
 
     // Set the locale style to "en-US" to set the language for the sort.
     sortfield.setStyle("locale","en-US");
     sort.fields = [sortfield];
     col.sort = sort;
     col.refresh();
  

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.

La comparaison par défaut fournie par la classe SortField permet d’effectuer correctement un tri spécifique par langue des chaînes de caractères. La langue est sélectionnée en définissant le style de langue sur une occurrence de la classe de l’une des façons suivantes :

  • En utilisant la classe dans une déclaration MXML et en héritant les paramètres régionaux à partir du document qui contient la déclaration.
  • Exemple :
      <fx:Declarations> 
             <s:SortField id="sf" /> 
      </fx:Declarations>
      
  • En utilisant une déclaration MXML et en spécifiant la valeur des paramètres régionaux dans la liste des affectations.
  • Exemple :
      <fx:Declarations> 
          <s:SortField id="sf_SimplifiedChinese" locale="zh-Hans-CN" /> 
      </fx:Declarations>
      
  • En appelant la méthode setStyle, par ex. sf.setStyle("locale", "zh-Hans-CN")
  • En héritant le style à partir d’un composant UIComponent en appelant la méthode addStyleClient() du composant UIComponent.
mx.collections.ICollectionViewspark.collections.SortFieldSort Constructeur. Constructeur.

Crée un nouvel objet Sort dont aucun champ n’est défini et qui ne contient aucun comparateur personnalisé.

findItem itemsvaluesmodereturnInsertionIndexfalsecompareFunctionnull propertyAffectsSort property reverse sort items ANY_INDEX_MODE Lors de l’exécution d’une recherche, retourne l’index d’un élément correspondant.any Lors de l’exécution d’une recherche, retourne l’index d’un élément correspondant. FIRST_INDEX_MODE Lors de l’exécution d’une recherche, retourne l’index du premier élément correspondant.first Lors de l’exécution d’une recherche, retourne l’index du premier élément correspondant. LAST_INDEX_MODE Lors de l’exécution d’une recherche, renvoie l’index du dernier élément correspondant.last Lors de l’exécution d’une recherche, renvoie l’index du dernier élément correspondant. compareFunction fields null SortFieldunique false
NumericDataProvider Cette classe IList génère des éléments qui sont une série de nombres séquentiels.mx.collections:IListmx.utils:OnDemandEventDispatcher Cette classe IList génère des éléments qui sont une série de nombres séquentiels. Les nombres sont compris entre les propriétés minimum et maximum. La propriété stepSize définit la différence entre un élément et le suivant.

 <s:SpinnerList>
   <s:dataProvider>
     <s:NumericDataProvider minimum="0" maximum="23" stepSize="1"/>
   </s:dataProvider>
 </s:SpinnerList> 
 

L’avantage de cette classe est que les valeurs d’élément sont calculées à la demande au lieu d’être stockées.

spark.components.SpinnerListmx.collections.IListNumericDataProvider Constructeur. Constructeur. addItemAt Cette fonction n’est pas prise en charge..itemindex addItem item getItemAt indexprefetch0 getItemIndex item itemUpdated itempropertynulloldValuenullnewValuenull removeAll removeItemAt index setItemAt itemindex toArray length maximum Valeur du dernier élément.100 Valeur du dernier élément. Cette valeur doit être supérieure à la valeur minimale. minimum Valeur du premier élément.0 Valeur du premier élément. Cette valeur doit être plus petite que la valeur minimale. stepSize La propriété stepSize contrôle les valeurs d’élément entre le premier et le dernier élément.1 La propriété stepSize contrôle les valeurs d’élément entre le premier et le dernier élément. Pour chaque élément, la valeur est calculée comme la somme de la propriété minimum et de l’index de l’élément multiplié par cette propriété.

Si, par exemple, minimum est égal à 10, maximum est égal à 20 et que cette propriété a la valeur 3, les valeurs valides de cette plage sont 10, 13, 16, 19 et 20.

SortField Fournit les informations de tri requises pour réaliser un tri sur un champ ou une propriété dans une vue de collection.The <s:SortField> tag has the following attributes:

  <s:SortField
  Properties
  compareFunction="Internal compare function"
  descending="false"
  name="null"
  numeric="null"
  />
  
]]>
mx.collections:ISortFieldmx.styles:AdvancedStyleClient Fournit les informations de tri requises pour réaliser un tri sur un champ ou une propriété dans une vue de collection. Classe SortField, destinée à une utilisation avec la classe Sort. Le tri est généralement défini pour des collections d’éléments complexes, c’est-à-dire pour des éléments dans lesquels le tri est réalisé sur les propriétés de ces objets. Exemple :

     var col:ICollectionView = new ArrayCollection();
     col.addItem({first:"Anders", last:"Dickerson"});
     var sort:Sort = new Sort();
     var sortfield:SortField = new SortField("first", true);
     sortfield.setStyle("locale", "en-US");
     sort.fields = [sortfield];
     col.sort = sort;
  
Dans certaines situations, la collection contient des éléments simples de type String, Date, Boolean, etc. Dans ce cas, le tri doit être appliqué directement au type simple. Lorsque vous créez un tri pour cette fonction, un seul champ de tri est nécessaire. Sa propriété name ne doit pas être définie. Par exemple :

     var col:ICollectionView = new ArrayCollection();
     col.addItem("California");
     col.addItem("Arizona");
     var sort:Sort = new Sort();
     var sortfield:SortField = new SortField(null, true);
     sortfield.setStyle("locale", "en-US");
     sort.fields = [sortfield];
     col.sort = sort;
  

La comparaison par défaut fournie par la classe SortField permet d’effectuer correctement un tri spécifique par langue des chaînes de caractères. La langue est sélectionnée en définissant le style de langue sur une occurrence de la classe de l’une des façons suivantes :

  • En utilisant la classe dans une déclaration MXML et en héritant les paramètres régionaux à partir du document qui contient la déclaration.
  • Exemple :
      <fx:Declarations> 
             <s:SortField id="sf" /> 
      </fx:Declarations>
      
  • En utilisant une déclaration MXML et en spécifiant la valeur des paramètres régionaux dans la liste des affectations.
  • Exemple :
      <fx:Declarations> 
          <s:SortField id="sf_SimplifiedChinese" locale="zh-Hans-CN" /> 
      </fx:Declarations>
      
  • En appelant la méthode setStyle, par ex. sf.setStyle("locale", "zh-Hans-CN")
  • En héritant le style à partir d’un composant UIComponent en appelant la méthode addStyleClient() du composant UIComponent.
mx.collections.ICollectionViewspark.collections.SortSortField Constructeur.namenullNom de la propriété utilisée par ce champ dans le cadre de la comparaison. Si l’objet est de type simple, transmettez la valeur null. descendingfalseIndique au comparateur si les éléments doivent être classés dans l’ordre décroissant. numericnullIndique au comparateur si les éléments de tri doivent être comparés en tant que nombres et non selon l’ordre alphabétique. Constructeur. initializeDefaultCompareFunction obj reverse arraySortOnOptions compareFunction Fonction comparant deux éléments lors d’un tri d’éléments pour la collection associée. Fonction comparant deux éléments lors d’un tri d’éléments pour la collection associée. Si vous spécifiez une propriété compareFunction dans un objet ISort, Flex ignore les propriétés compareFunction des objets SortField de l’objet ISort.

La fonction de comparaison doit présenter la signature suivante :

function myCompare(a:Object, b:Object):int

Cette fonction doit retourner les valeurs suivantes :

  • -1, si Object a doit apparaître avant Object b dans l’ordre de tri.
  • 0, si Object a est égal à Object b.
  • 1, si Object a doit apparaître après Object b dans l’ordre de tri.

La valeur par défaut est une fonction de comparaison interne qui réalise une comparaison de chaîne, de nombre ou de date dans l’ordre croissant ou décroissant. La comparaison des chaînes est réalisée à l’aide de la méthode de comparaison spécifique aux paramètres régionaux (langue, région et script) de la classe SortingCollator. Cette classe utilise le style des paramètres régionaux pour déterminer un paramètre régional. Spécifiez votre propre fonction uniquement si vous souhaitez disposer d’un algorithme de comparaison personnalisé. Normalement, cela est nécessaire uniquement lorsqu’un champ calculé est utilisé dans un affichage.

descending name null numeric null usingCustomCompareFunction