flex页面跳转
其实对于这个题目是不恰当的,因为flex中是没有页面这个概念的,页面在flex里面其实就是一个个的Canvas,vbox,
hbox等等之类的东西,看到的不同页面的切换,就是这些元素一层层的堆积,或者替换,但是为了好理解,还是称之为
"页面跳转"。其实我们可以对比传统的C/S开发模式,没页面跳转,只有窗体和元件的显示和隐藏。
那么在flex中怎么实现页面的跳转了,我总结了下,主要有一下几种方式:
1、使用ViewStack组件,具体代码如下所示:把要跳转的页新建成 MXML Component,然后通过 ViewStack 组件把
这些页包含进来
<mx:ViewStack id="storeViews" width="100%" height="550" creationPolicy="all">
<shouye id="homeView" label="首 页" showEffect="WipeDown" hideEffect="WipeUp" />
<leixing id="pView" label="模板类型" showEffect="WipeDown" hideEffect="WipeUp" />
<make id="supportView" label="立即制作" showEffect="WipeDown" hideEffect="WipeUp" />
</mx:ViewStack>
然后再用别的组件切换这些页,比如用 Button
<mx:Button click="storeViews.selectedChild=homeView;" />
2、使用navigateToURL,主要方式如下:var url:String = "http://localhost:8080/Flex_J2eeDemo/bin/Welcome.html";
var request:URLRequest = new URLRequest(url);
 
相关文档:
<mx:TextInput id="userName" maxChars="4" restrict="a-zA-Z0-9" />
restrict 用法:
TextField.restrict = "此处为可输入的内容";
field.restrict = "^此处为禁止输入的内容";
restrict属性支持一些类似正则表达式的样式:
field.restrict = ......
这样的陷阱,谁能不中招?
Flex的setter大家都用过吧,看例子:
主程序:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()">
<mx:Script>
<![CDATA[
function init():void{
v ......
这里分两种情况,一种是数据源在MXML文件中,如:
<mx:XML id="treeXML" format="e4x">
<root>
<node label="通知通告管理" data="0">
<node label="申报通知" data="1" />
<node label="填表须知" data="1" />
......
使用到的as3gif,请到Google去下载
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="horizontal" xmlns:file="file.*" xmlns:commont="commont.*">
<mx:TitleWindow title="abc" id="ADwindow" width="400" height="283" >
< ......
上次说了直接把字体嵌入到flex程序中的方法,这次写一下将字体编译成swf后供其它flex程序加载来调用的方法。
首先,新建一个actionscript的project,取名为FlexFont,将字体文件放到src/font目录下,主程序为
FlexFont.as文件,内容如下:
package {
import flash.display.Sprite;
public class FlexFont extend ......