as3+flash+adobe应用容器专题

  • 格式:pdf
  • 大小:259.07 KB
  • 文档页数:26

关于应用容器(Application Container) 译者:兰天 有关Flex的其他文档见搏客:http://ltian.javaeye.com 欢迎斧正:QQ:595534098 

Flex定义了一个缺省的应用(Application)容器用来存放所有添加到应用中的内容。Flex

用标记创建这个容器,必须是MXML应用文件的第一个标记。这个应用对象是这个文件中所有ActionScript的缺省范围,并且,定义了应用初始大小。

虽然使用应用容器作为应用的唯一容器非常方便,但是通常将控件添加进应用之前,一般不只定义一个容器。通常,使用Panel容器作为标记之下的第一个容器。 Application容器缺省布局属性如下:

属性 缺省值 Default size(缺省大小) 浏览器窗口的大小 Child alignment(子对齐) 使用“竖直列”对齐方式管理子控件。Child horizontal alignment(子控件水平方向对齐) Centered(居中)。

Default padding(缺省补白) 顶部、底部、左边、右边各有24个像素。

设定应用容其及其子控件的大小 应用容器管理以一个单独的竖直列来管理它所有的子控件。可以以像素值或百分比来显示地设定应用容器的高度和宽度,这里的百分比是指相对于浏览器窗口。缺省情况下,应用容器的高和宽都是100%,这意味着它完全填充了整个浏览器窗口。 下面的例子将应用容器的大小设置为浏览器窗口高和宽的一半:

width="50%"> ... 使用百分比来指定应用容器大小的优点是在用户改变浏览器窗口的大小时,Felex可以自动随之改变应用的大小尺寸。当用户改变了浏览器窗口的大小时,Flex保持了应用容器的百分比大小。如果设定应用子组件MXML标记的高度和宽度属性为百分比值,那么当应用大小发生变化时,子组件也会自动改变大小。如下例所示:

width="100%" height="100%"> 下面的例子用显式地设置像素个数来设定应用容其的大小: height="100" width="150"> 如果应用容器的子控件改变了大小或位置,使部分或者全部的组件超出了应用容器的显示区域,Flex会为容器增加滚动条,如前面的例子所示。 如果要将子容器设置为填满整个应用容器,最简单的方法就是设置子容器MXML标记的宽度和高度值为100%(或者,在ActionScript中设置percentWidth以及percentHeight值为100),并且设置应用容器的padding值为0。如果按照应用容器的高宽属性来设置子容器的高宽属性,那么必须减去应用容器的padding,否则子容器将会大于可使用的空间,并且应用将会出现滚动条。 下面的例子中,VBox容器扩展填充到除了应用容器padding之外的所有可用空间:

width="100" height="100">

下面的例子中,VBox容器大于应用容器中的可用空间,导致滚动条的显示: width="100" height="100">

下面的例子中,应用容器没有padding,这使得它的VBox子容器充满了整个浏览器窗口。 width="100" height="100" paddingTop="0" paddingBottom="0" paddingLeft="0" paddingRight="0">

覆盖应用容器的缺省样式 缺省情况下,应用容器有以下缺省的样式属性来定义Flex应用的视觉方面的特性,并使之与通用容器的缺省值有所区别:

属性 缺省值 backgroundColor 背景颜色 Adobe® Flash® Player或者Adobe® AIR™舞台区域颜色,这个颜色在应用载入和初始化时是可见的。如果英勇的背景色是透明的,这个颜色也可见,缺省值为0x869CA7

backgroundGradientAlphas 背景颜色的不透明梯度 [1.0, 1.0]一个完全不透明的背景。

backgroundGradientColors 背景颜色梯度 [0x9CBOBA, 0x68808C],灰白的背景,在底部略为发暗。 backgroundImage 背景图片 受backgroundGradientAlphas和backgroundGradientColors控制的梯度。缺省值为x.skins.halo.ApplicationBackground

backgroundSize 背景大小 当设置这个属性为100%,背景图片占有了整个应用容器。 horizontalAlign 水平对齐 居中 paddingBottom 底部补白 24 像素. paddingLeft 左侧补白 24像素. paddingRight 右侧补白 24像素. paddingTop 顶部补白 24像素. 可以通过定义自己缺省的样式属性来覆盖应用的缺省值。 改变应用的背景

应用容器的backgroundGradientAlphas,backgroundGradientColors和backgroundImage样式控制了容器的背景显示。缺省情况下,这些属性定义了一个不透明的灰白梯度背景。 通过使用backgroundImage属性可以为应用指定一个图片作为应用的背景。如果即设置了backgroundImage属性,又设置了backgroundGradientColors属性,Flex将忽略backgroundGradientColors属性。 可以通过以下两种方式来设定应用的梯度背景: 1.给backgroundGradientColors属性设置两个数值,如下例所示:

xmlns:mx="http://www.adobe.com/2006/mxml"backgroundGradientColors="[0x0000FF, 0xCCCCCC]"> Flex将自己计算两个指定值之间的梯度模式。 2.将backgroundColor 设置为想要的值,如下例所示:

xmlns:mx="http://www.adobe.com/2006/mxml"backgroundColor="red"> Flex自己计算比红色稍微暗点的颜色和比红色稍微亮点的颜色之间的梯度模式。 要想给application设置纯色背景,将backgroundGradientColors属性的两个值设置为相同数值,如下所示:

xmlns:mx="http://www.adobe.com/2006/mxml"backgroundGradientColors="[#FFFFFF, #FFFFFF]">