三大Flex布局用法(转载)

Flex布局基础html

对于Flex 初学者,在Hello World以后,Flex布局即是下一站学习要的要义。如果从传统的Html转变而来,总但愿找到相似于Div/Table/UL等之类的控件,也但愿在 Flex中能够像Dreamweaver同样能够拖拽控件;而若是是从Windows Application程序转变而来,则可能更喜欢Absolute布局,让控件散落于页面之上,经过x/y控制其坐标。这种作法让Html设计师以为可 笑,但我见过有人确实用VS这么作过。程序员

喜欢Div的朋友,可能以为Box很亲切;喜欢用Table的设计师,对不起,Flex没有Table,Grid虽与之极像,但不宜用来布 局;Application程序员也不要图行事,使用Absolute布局,这种布局不宜开发Web应用,若是只是开发桌面版则可有可无。浏览器

本节写了三个Demo:布局

  

◆Absolute布局学习

◆Hbox布局设计

◆VBox布局(与前者统称Box布局)htm

若是开发AIR程序或者桌面应用,能够选择Absolute布局;但若是开发Web应用,推荐学习、研究Box布局。右击能够查看源码。开发

1、Flex布局之Absolute源码

用Flex新建Application时,最下面有一个布局属性选项:Vertical,Horizontal,Absolute。意思如单词。若 选择Absolute,则Application的子控件依据其{x,y}坐标依靠。但不影响第二代子控件,即,若是放一个HBox到该 Application中,HBox中的控件则水平排列。Horizontal与Vertical至关于把Application作为一个水平或竖向的盒 子(Box),对子、孙控件的影响关系与Absolute相似。it

查看Absolute,不难发现,可视区域的宽度是必定的,不管在何种分辨率下,何种浏览器宽度。但在Web应用中,咱们不但愿出现这样的效果。相 反,咱们可能但愿控件能够按照百分比自动调整位置。只此一条,开发Web应用,便不建议使用Absolute布局。由此便产生了方便、简单、易用的Box 布局。

2、Flex布局之Hbox

HBox让子控件按水平方向自动排列,居右、居左或居中均可以。

查看Hbox,控件与前者没有增减,一样的控件。但它能够自适应浏览器宽度。文章的标题栏部分用了一个HBox,其包涵三个子控 件:Label,Spacer与LinkButton.Spacer的宽度设为100%,这样不管Label无多少字符,多宽,均可以把 LinkButton撑到最右边。一样,也能够把它用在VBox中,则设置其高为100%。Spacer在Box布局中很是实用。
细心的朋友不难发现,这个Application的layout属性是Vertical,整个App至关于一个VBox。最下面的评论文本框与按纽也在一个HBox以内。

3、Flex布局之VBox

VBox让子控件在竖直方向上排列。top,bottom or center。

查看VBox,这个App的layout是Horiazontal,至关于一个HBox。一级控件是两个VBox,一左一右。左边与前面的HBox 对应的部分相似。右边用Panel与TitleWindow,还有Grid,Tile。Panel与TitleWindow都具备layout属性,能够 在其内部放置任何子控件,待遇与Application同。值得一提的是Tile,它可以让子控件流动延伸,先在x轴上排行,满了以后再换行。 TileList与其相似。

Grid酷似html中的Table,但差异很大,也不适合作布局用。实际应用中,也经常使用Tile或TileList代替。Box布局能够知足基本的项目应用,但有一些问题。譬如,文章内容要滚动显示,能不能像Html那样实现流布局?答案是能够的。Box布局只是基本的布局方法,并无发挥Flex的长处与优点。关于State与流布局在稍后。在商业项目开发中,Application99%都使用absolute布局,中间所用的容器间有box,tile或其它布局。

相关文章
相关标签/搜索