[千斤顶之一日一类004_5]Top Level:Class,Date

Categories: Flex; Tagged with: ; @ November 5th, 2008 20:43

昨天没有玩千斤顶, 也没有跑步. 以至于午睡都睡的不踏实. 老刘同学说,你是不是有些累, 于是我开始想, 那是不是改为One Week One Class? W再变成M,再变成Y, 这样下去, 怕是这一辈子也总结不完了吧. 咬咬牙, 乳沟都可以挤出来, 我还挤不出点时间来? 嘿嘿 . 昨天碰巧需要总结Class, 我看这个类也没啥好总结的. 只有一条:

在ActionScript 3.0 中, 在一个AS文件中, package之外, 仍然可以存在类, 但不可以有任何修饰符, 这些类只能被该AS文件中的类调用.

如:

// ActionScript file
package {
    import flash.display.Sprite;

    public class ClassExampl extends Sprite {
        public function ClassExampl() {
            var classToConstruct:Class;
            var classInstance:Object;

            classToConstruct = ClassA;
            classInstance = new classToConstruct();
            trace(classInstance);    // [object ClassA]

            classToConstruct = ClassB;
            classInstance = new classToConstruct();
            trace(classInstance);    // [object ClassB]
        }
    }
}// end fo package
 class ClassA {
}

class ClassB {
}

Class 类就总结这么多吧. 其实也没啥东西了. 下面是Date类:

这Date类就更简单了, 虽然属性与方法看起来都很多, 但都是非常简单的东西.

主要东西整理下, 等下还得去跑个步, 太晚了让家里人操心不好…..:

public function init():void {
	var d:Date = new Date(); //2008年11月5号 20:36:49 .TMD都五号了啊,时间过的真快.....
	trace(d.date); //Date的属性 显示 5
	trace(d.getDate()); //返回1~31的Number, 这里显示: 5
	trace(d.setDate(20)); //把日期该到20号...现在时间变成了2008年11月20号 20:36:49 会返回new time in milliseconds. 这里显示: 1227184609078
	trace(d.getDate());  //20
	trace(d.toDateString()); //Thu Nov 20 2008
	trace(d.toLocaleDateString());//Thu Nov 20 2008
	trace(d.toLocaleString()); //Thu Nov 20 2008 08:36:49 PM 带时间...不是24小时的
	trace(d.toString()); //Thu Nov 20 20:36:49 GMT+0800 2008  带时区
	trace(d.toTimeString()); //20:36:49 GMT+0800 时间与时区
	trace(d.toUTCString()); //Thu Nov 20 12:36:49 2008 UTC
}

[千斤顶之一日一类003]Top Level: Boolean学习

Categories: Flex; Tagged with: ; @ November 4th, 2008 0:09

昨天没有玩千斤顶, 今天也玩不动, 发现今天轮到Boolean了, 比较简单, 咬牙再坚持一下….

Boolean这个类的确很简单. Boolean用于存储逻辑判断的对象, 要么为true, 要么为False.

新建一个Boolean:

可以使用构造函数, 全局函数, 直接赋值.来实现. 如:
var flag:Boolean = true;
var flag:Boolean = new Boolean(true);
var flag:Boolean = Boolean(true);

Constructor Detail

使用给定的参数建立一个Boolean,  如果参数为空, 则该对象被初始化为False. 如果含有参数, 则该方法将按照Boolean()方法的规则将该参数转化并返回一个Boolean. Boolean()函数的转换规则如下:

Input Value Example Return Value
0 Boolean(0) false
NaN Boolean(NaN) false
Number (not 0 or NaN) Boolean(4) true
Empty string Boolean("") false
Non-empty string Boolean("6") true
null Boolean(null) false
undefined Boolean(undefined) false
Instance of Object class Boolean(new Object()) true
No argument Boolean() false

11月3日 周一 阴不完的天

Categories: 垃圾山 November 3rd, 2008 23:52

前阵子因为入室盗窃比较猖狂, 楼道的密码改了, 没门卡, 出门不方便, 又加上下雨, 就一直没有跑步. 今天哼哧哼哧的差点没跑完…看来每天总结一个类, 每天跑五公里, 都是比较累人的.

老刘回去一周了, 这一周也没干啥, 除了总结了下之前没有总结的东西, 小看了下moodle的数据库之外, 就是捣鼓这些类了. 像一直蚂蚁在地图上爬来爬去, 爬了好几天, 也没量出个深浅来…

这几天看书一直不在状态, 读了一本书, <<即时时间管理>>, 谈到时间需要从一个更高层次, 更宏观的角度来安排, 这样就不会产生没空谈恋爱, 没空照顾家, 甚至没空认识人的现象. 但是反观时间, 如果不能浪费时间, 生活也就没有了乐趣. 很少有人能把时间这个东西安排好, 我也未能免俗. 想到人民广场那老头老太太为自家孩子征婚的场景, 不免一阵心悸. 好在有老刘, 再忙, 也不至于那个地步.

再过两个月就要跟2008告别了, 时间过得真是太快了.

Fan同学的生活终于有了改变, 去拜城丈量土地去了, 羡慕中….有机会了解一个未曾到过的地方的风土与人情, 是一件幸福的事情.

小球同学对考研没有了兴趣, 对上学也已经厌烦, 对未来也没有打算, 也许人总要有一段成长的过程, 等到有一天, 混不下去了, 他便会自动奋发.

使用ANT生成SWC Building SWC with ANT

Categories: Flex; Tagged with: ; @ November 3rd, 2008 14:44

by Tomasz Stocki on October 19, 2008 Avg  原载: Flex cookbook beta  翻译及整理:LiGL

问题摘要 Problem Summary

你试图使用ANT编译SWC文件.  You want to compile your swc using ant.

解决方法  Solution Summary

使用Adobe在Flex SDK中提供的Flex ANT任务来编译你的应用 Use flex ant tasks provided by adobe in flex SDK to compile your application.

解释 Explanation

在部署应用程序时, 我们可以使用ANT这个强大的工具—它可以帮助我们运行程序, 运行命令行, 复制文件,等等…
When deploying flex application we can use very powerful tool – ant. With his help we can launch applications, run command line tools, copy files and much, much more (see: http://ant.apache.org/manual/index.html)
在开始之前, 如果你使用的时FlexBuilder单独版本[非Eclipse插件版], 你需要先安装ANT
Before we start you should install ANT on your flex builder if you have stand alone version.
参考: See article “Installing Ant in Flex Builder 3” at :
http://blog.jodybrewster.net/2008/04/09/installing-ant-in-flex-builder-3/

安装完毕之后, 只需要建立以下两个文件: After that, just create two files in project:

build.properties: —–该文件用于存储Bulid.xml中用到的属性, 便于管理与查看
###### Flex Properties ##############################
# change this path to your flex sdk directory
# Use "/" in your directory path e.g. C:/FlexSDK/3.0.0
FLEX_HOME=C:/flex_sdk_4.0
###### Project Properties ###########################
src-dir=${basedir}/src

build.xml:

<project name="Ant build SWC sample" basedir="." default="build SWC">
<!-- load user configuration properties -->
<property file="build.properties" />
<taskdef resource="flexTasks.tasks" classpath="${FLEX_HOME}/ant/lib/flexTasks.jar" />
<!-- =================================
target: build SWC
================================= -->
<target name="build SWC">
<compc output="${basedir}/swc/sample.swc"
include-classes="tom.hallo.CHalloWorld">
<source-path path-element="${src-dir}" />
</compc>
</target>
</project>

第一个文件中存储了关于本机FlexSDK及工程的目录. First file build.properties, holds info about location FlexSDK and files structure in your project.
在Build.xml中的代码读取第一个文件并运行ANT的compc任务生成swc文件. Code in build.xml loads build.properties and run ant task compc to generate swc.
在FlexBuilder中, 只需要将Build.xml从导航栏中拖到Ant视图中, 然后双击’build SWC’任务. In Flex Builder, just drag and drop build.xml from Flex Navigator to Ant view and double “click build SWC” task.

Flex中使用国际化语言 Use I18N In Flex

Categories: Flex; Tagged with: ; @ November 2nd, 2008 15:44

1.目的: 在Flex中工程使用多种语言, 如英语, 简体中文, 繁体中文等国际化语言, 以供不同地区或不同语言的用户使用

关于I18N的介绍,详见http://en.wikipedia.org/wiki/I18n

2. 具体实现:

2.1 建立相关语言文件:
语言文件存储于相关.properties文件中. 与Java中类似, Properties文件的每行都以key=value的形式书写. 使用!或#开始一行的注释.

首先我们建立一个名为resources的目录[名字随便叫, 关键要代表他里面的东西] , 然后建立一个子目录locale, 在该目录下放置各个语言文件. 如下图:
image
en_US下Test.Properties的内容:
test.info = Current Langunage: English {0}   //{0}的意义在后面会有介绍.
zh_CN下的内容:
test.info = 当前语言: 中文 {0}

Properties文件编辑Eclipse插件安装地址: http://liguoliang.com/2010/04/1232/

2.2 将语言包添加到flex工程build Path中.
将刚才建立的目录resources/locale/{locale} 加入到Build Path中. {locale}代之在有上下文时具体的语言包. 如上图中所示之en_US与zh_CN;
同时,要在该工程的编译参数中, 加入要使用的语言, 如 -locale en_US zh_CN;

2.3 使用语言包中内容:

1. MXML中, 直接使用:
text=”@Resource(key=’test.info’, bundle=’Test’)”; 或:
text=”{resourceManager.getString(‘Test’,’test.info’, [‘liguoliang.com])}” // 可随语言改变自动更新

getString的第三个参数,格式为数组, 在之前的语言包中,我们使用了{0}, 意思就是使用该参//数[数组]的第一个元素填充.

2. AS中, 但随着语言改变不能自动更新.

[ResourceBundle("liguoliang")]
public class AssessItemSelector extends EventDispatcher
{
	protected static const RM:IResourceManager = ResourceManager.getInstance();
	protected static const BUNDLE_LGL:String = "Test";

var title:String = RM.getString(BUNDLE_LGL, "test.info");

}

以上两方法都会打印Test.properties文件中 test.info的内容.

2.4 动态改变语言:

改变语言:

import com.insprise.common.LocaleUtils;
import mx.resources.ResourceManager;
import mx.resources.ResourceBundle;     

private function setLangToEn_US():void {
	//使用ResourceManager.getInstance().localeChain 设置语言 .
	ResourceManager.getInstance().localeChain = ['en_US'];
}
private function setLangToZh_CN():void {
	//使用ResourceManager.getInstance().localeChain 设置语言 .
	ResourceManager.getInstance().localeChain = ['zh_CN'];

}

使用两个按钮分别呼叫上面两个函数, 进行语言的改变.

3. 抓图:

image image

Newer Posts <-> Older Posts



// Proudly powered by Apache, PHP, MySQL, WordPress, Bootstrap, etc,.