Flex/ Flex 3 para Flex 4/ Flex 4

Flex 3 para Flex 4: ApplicationControlBar

Adeus AplicationControlBar, lembra que você fazia assim no Flex 3:


Flex 3 ApplicationControlBar

1
2
3
4
5
6
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
	<mx:ApplicationControlBar>
		<!-- itens para ser adicionado -->
	</mx:ApplicationControlBar>
</mx:Application>

A grande sacada do ApplicationControlBar ficava por conta da propriedade dock=true, lembra? Ela ocupava toda a parte superior do Application. A grande desvantagem é que se você decidisse mudar o layout padrão dele que é alinhar sempre os items de forma orizontal da esquerda para direita, você teria que colocar outros containers, o que acaba ficando meio sem sentido, sempre um container dentro de outro container (preço caro a se pagar).

No Flex 4 eles criam um similar a ele, só que bem mais legal de trabalhar e passível de receber qualquer típo de layout. Veja como pode ser feito:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?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" minWidth="955" minHeight="600">
	<s:layout>
		<s:BasicLayout/>
	</s:layout>
	<fx:Declarations>
		<!-- Place non-visual elements (e.g., services, value objects) here -->
	</fx:Declarations>
	<s:controlBarLayout>
		<s:VerticalLayout/>
	</s:controlBarLayout>
	<s:controlBarContent>
		<s:Label text="item 01"/>
		<s:Label text="item 02"/>
	</s:controlBarContent>
</s:Application>

Qual a vantagem do novo controlBarContent? Simples, aplicar qualquer tipo de layout, criar em qualquer componente uma barra de menu, o controlBarContent é aplicável em qualquer componente de Container.

Qual a desvantagem? Se você quiser mudar para parte inferior do seu Application, você vai ter que criar um novo Skin para seu Application. Coisa que no Flex 3 você apenas mudava a posição y sempre que fizesse um resize da App.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios são marcados com *