我们首先来看两个简单的views:views:Paper和views:Welcome
views:Paper
<?xml version="1.0" encoding="utf-8"?> <s:Group xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" creationComplete="init()"> <s:layout> <s:BasicLayout/> </s:layout> <fx:Script> <![CDATA[ import mx.collections.ArrayCollection; import mx.controls.Alert; import mx.rpc.events.FaultEvent; import mx.rpc.events.ResultEvent; private function init():void{ content.text="心情测试"; addTime.text="2011年3月26日"; } ]]> </fx:Script> <s:Rect height="146" width="181"> <s:fill> <s:BitmapFill source="@Embed('net/shangle/assets/paper.png')"/> </s:fill> </s:Rect> <s:RichText textAlign="center" verticalAlign="middle" id="content" x="29" y="36" width="130" height="60"/> <s:Label id="addTime" x="70" y="101"/> </s:Group>在这个views中主要放了一个Rect区域并用位图填充,这里要注意的是引入资源的@Embed标记,然后在该区域上放置了一个RichText组件和Label组件,用来显示文字和时间。具体的值在init函数中设定。而init函数的调用是在这个views的根Group组件的creationComplete事件中产生。在init函数中设置两个组件的文本内容都是使用了固定值,那么我们如何来对时间进行修改,修改为自动获取当前时间?我们利用了Date系统类。代码如下:
old: addTime.text="2011年3月26日" new: var currentDate:Date=new Date(); addTime.text=currentDate.fullYear+"年"+(currentDate.month+1)+"月"+currentDate.date+"日";
views:Welcome的组件代码更简单,就放了两个IMAGE这里就不列了。比较麻烦的是剩下的那个views:ControlBar
【待续……】