Flex - Controle Accordian
Introdução
O controle Accordian é um contêiner de navegador que possui uma coleção de contêineres filhos, mas apenas um deles por vez é visível.
Declaração de Classe
A seguir está a declaração para mx.containers.Accordian classe -
public class Accordion
extends Container
implements IHistoryManagerClient, IFocusManagerComponent
Propriedades Públicas
Sr. Não | Descrição da Propriedade |
---|---|
1 | headerRenderer : IFactory Uma fábrica usada para criar os botões de navegação para cada criança. |
2 | historyManagementEnabled : Boolean Se configurada como true, esta propriedade habilita o gerenciamento de histórico dentro deste contêiner Accordion. |
3 | resizeToContent : Boolean Se definido como verdadeiro, este acordeão é redimensionado automaticamente para o tamanho de seu filho atual. |
4 | selectedChild : INavigatorContent Uma referência ao contêiner filho atualmente visível. |
5 | selectedIndex : int O índice baseado em zero do contêiner filho atualmente visível. |
Propriedades Protegidas
Sr. Não | Descrição da Propriedade |
---|---|
1 | contentHeight : Number [somente leitura] A altura da área, em pixels, na qual o conteúdo é exibido. |
2 | contentWidth : Number [somente leitura] A largura da área, em pixels, na qual o conteúdo é exibido. |
Métodos Públicos
Sr. Não | Método e Descrição |
---|---|
1 | Accordion() Construtor. |
2 | getHeaderAt(index:int):Button Retorna uma referência ao botão do navegador para um contêiner filho. |
3 | loadState(state:Object):void Carrega o estado deste objeto. |
4 | saveState():Object Salva o estado deste objeto. |
Eventos
Sr. Não | Descrição do Evento |
---|---|
1 | change Enviado quando o contêiner filho selecionado é alterado. |
Métodos herdados
Esta classe herda métodos das seguintes classes -
- mx.core.Container
- mx.core.UIComponent
- mx.core.FlexSprite
- flash.display.Sprite
- flash.display.DisplayObjectContainer
- flash.display.InteractiveObject
- flash.display.DisplayObject
- flash.events.EventDispatcher
- Object
Exemplo de controle Flex Accordian
Vamos seguir as etapas a seguir para verificar o uso do controle Accordian em um aplicativo Flex criando um aplicativo de teste -
Degrau | Descrição |
---|---|
1 | Crie um projeto com um nome HelloWorld em um pacote com.tutorialspoint.client conforme explicado no capítulo Flex - Criar aplicativo . |
2 | Modifique HelloWorld.mxml conforme explicado abaixo. Mantenha o resto dos arquivos inalterados. |
3 | Compile e execute o aplicativo para ter certeza de que a lógica de negócios está funcionando de acordo com os requisitos. |
A seguir está o conteúdo do arquivo mxml modificado src/com.tutorialspoint/HelloWorld.mxml.
<?xml version = "1.0" encoding = "utf-8"?>
<s:Application xmlns:fx = "http://ns.adobe.com/mxml/2009"
xmlns:s = "library://ns.adobe.com/flex/spark"
xmlns:mx = "library://ns.adobe.com/flex/mx
width = "100%" height = "100%" minWidth = "500" minHeight = "500">
<fx:Style source = "/com/tutorialspoint/client/Style.css" />
<s:BorderContainer width = "630" height = "480" id = "mainContainer"
styleName = "container">
<s:VGroup width = "100%" height = "100%" gap = "50"
horizontalAlign = "center" verticalAlign = "middle">
<s:Label id = "lblHeader" text = "Complex Controls Demonstration"
fontSize = "40" color = "0x777777" styleName = "heading" />
<s:Panel id = "accordianPanel" title = "Using Accordian"
width = "500" height = "300" >
<s:layout>
<s:HorizontalLayout gap = "10" verticalAlign = "middle"
horizontalAlign = "center" />
</s:layout>
<mx:Accordion id = "accordion" width = "95%" height = "90%">
<s:NavigatorContent label = "Section 1" width = "100%"
height = "100%">
<s:VGroup verticalAlign = "middle" horizontalAlign = "center"
width = "100%" height = "100%">
<s:Label text = "Contents for Section 1" />
</s:VGroup>
</s:NavigatorContent>
<s:NavigatorContent label = "Section 2" width = "100%"
height = "100%">
<s:VGroup verticalAlign = "middle" horizontalAlign = "center"
width = "100%" height = "100%">
<s:Label text = "Contents for Section 2" />
</s:VGroup>
</s:NavigatorContent>
<s:NavigatorContent label = "Section 3" width = "100%"
height = "100%">
<s:VGroup verticalAlign = "middle" horizontalAlign = "center"
width = "100%" height = "100%">
<s:Label text = "Contents for Section 3" />
</s:VGroup>
</s:NavigatorContent>
<s:NavigatorContent label = "Section 4" width = "100%"
height = "100%">
<s:VGroup verticalAlign = "middle" horizontalAlign = "center"
width = "100%" height = "100%">
<s:Label text = "Contents for Section 4" />
</s:VGroup>
</s:NavigatorContent>
</mx:Accordion>
</s:Panel>
</s:VGroup>
</s:BorderContainer>
</s:Application>
Quando estiver pronto com todas as alterações feitas, vamos compilar e executar o aplicativo no modo normal como fizemos no capítulo Flex - Criar aplicativo . Se tudo estiver bem com sua aplicação, ele produzirá o seguinte resultado: [ Experimente online ]