色,以至于下次创建时背景不是为默认的蓝色的呢 请写出你认为正确的方法.
答:修改sdk\frameworks\projects\framework\default.css里Application的backgroundColor: #0000FF;
19.flex的开发框架有哪些,它们有什么优缺点?
答: 最常见的当然是Cairngorm、Puremvc了,此外还有Mate,Swiz等等,据说被广泛应用的已经有10几款了。Cairngorm作为Adobe官方出品,有着贵族血统的它比较全面,是这些框架中已知bug最少的,但是基于他的应用相对臃肿复杂一些,需要对每个可以被触发的事件写一个对应的Command,编码量巨大,并且单元测试很不容易,不适合敏捷开发。Puremvc应该是现在用的最多的as框架了。比较完善、并且与Cairngorm相比,更适合中小型应用的开发,它与Cairngorm一样,也是以MVC模式为中心,并以Fa 0 4ade作为中央存储器的单件类的形式进行开发的。说下Mate,它是一个比较奇怪的框架,是基于标签的事件驱动型的。也就是说你不能再随意的写as类的,在使用Mate的情况下,只能用MXML来做这些事情。Swiz是Mate的孪生兄弟,长的挺像,没具体用过,不大了解。
11.使用Flex Bulider3如何跟踪程序
答:我知道的三种1.trace() 2.设置断点 3.当不在调试模式时可以调用as的Alert.show()或js的alert() 如:navigateToURL(new URLRequest(“java script:alert(traceMsg)”),”_self”);
20.在flex开发中,很多代码都写在mxml文件里,为了做到mvc模式,你是怎么处理的。
我认为mxml并不影响mvc模式啊。分两种情况来讨论,首先,是自己创建整个应用结构的时候,那我们可以手动将UI所在的mxml归为一类,然后由Mediator去操作或者说控制这些组件既可了,然后Mediator又统一交给Controller去操作。如果采用其他框架来进行开发的话,那就更不用来考虑这个问题了,像Cairngorm、Puremvc之类的框架已经很好的为我们解决了这些问题。只要按照它们的使用规范来进行开发,自然没有问题。
21.如果发生内存泄露,你是如何解决的?
比如说 注意不要循环引用,特别是在使用Timer的时候要格外注意,不要忘记全局对象上的引用的清除,在创建控制器和模型的时候要注意一定要使用单件模式。在addEventListener时候尽量采用弱引用、自引用、或者子对象引用,以避免内存泄漏。
22.flex和后台语言是如何交互的?
无疑就这两种方法:remoteobject 或者是Http service
23你是如何处理前端速度慢的问题?
flex前端速度慢 其实仔细说应该分2部分,1.是flex生成的swf由于SDK庞大的关系,swf体积也跟着庞大了,这我们可以做的就是用Module动态加载,还有就是RSL了。2.处理速度慢,远程方法速度慢,这是AVM的硬伤了,基本没有很好的解决方法,我们能做的只是让这个异步进行的更完美一些,让用户在等待的过程中,做其他的事情,以至于让用户忽略这段等待的时间。
24 请问用什么办法解决安全域的问题 如果你不知道安全域的问题的话,可以在本机中绑 定一下图片,然后再放到服务器上,就会出现此问题了.
答:配置相关的安全沙箱的策略xml。
网站:http://topic.csdn.net/u/20091020/10/364e66cf-c73e-46dc-a04f-b4e569521336.html
http://japi.javaeye.com/blog/792362
讲的很详细。
25请解释下单例模式
单例模式,是一种常用的软件设计模式。在应用这个模式时,单例对象的类必须保证只有一个实例存在。许多时候整个系统只需要拥有一个的全局对象,这样有利于我们协调系统整体的行为,简化了在复杂环境下的配置管理。
实现单例模式的思路是:一个类能返回对象一个引用(永远是同一个)和一个获得该实例的方法(必须是静态方法,通常使用getInstance这个名称);当我们调用这个方法时,如果类持有的引用不为空就返回这个引用,如果类保持的引用为空就创建该类的实例并将实例的引用赋予该类保持的引用;同时我们还将该类的构造函数定义为私有方法,这样其他处的代码就无法通过调用该类的构造函数来实例化该类的对象,只有通过该类提供的静态方法来得到该类的唯一实例。请写个单例。例:
package {
public class MySubClass {
privatestatic var mySubClass:MySubClass;
publicvar num:Number=0;
publicfunction MySubClass() {
if (MySubClass.mySubClass!=null) {
thrownew Error(“只能产生一个实例”);
}
}
publicstatic function getInstance():MySubClass {
if (mySubClass==null) {
mySubClass= new MySubClass();
}
return mySubClass;
}
}
}
26.请问enterFrame和timerEvent这2个事件有什么区别 请说下具体的使用方法和相关的使用场合
enterFrame:播放头进入新帧时调度。如果播放头不移动,或者只有一帧,则会继续以帧速率调度此事件。此事件为广播事件,这意味着具有注册了此事件的侦听器的所有显示对象都会调度此事件
timerEvent:它的启动是通过start()方法,暂停是通过stop()方法来实现。它的调用是运行的时间每次达到delay时调度
27.请问怎么样检测本机的内容呢,比如说,我想知道本机的操作系系,是否有视频等这些.
答:flash.system.Capabilities.os 是系统类型
flash.system.Capabilities.playerType 是视频播放器类型
28.请问我想判断一个字体是否是数字,用什么办法去判断呢
类型是否为数字,那就typeof一下,看他是不是int或者Number,如果是问字符串内容是否为数字,那也有很多办法,比如说,读出每个字符的ascii码,判断范围,或者是
vara:String=”1232d4″;
var b:Number=Number(a);
var c:String=String(b);
if(a==c){
Alert.show(“yes”);//flex里面的弹出框组件
}else{
Alert.show(“no”);
}
29.请问我想判断一个字符或者一个对象的类型怎么判断呢
答:typeof(obj)
30.请问你了解 internal 控制符么 能说下具体使用方法和场合嘛
答:同一个包里才能调用internal所定义的变量或对象
31.我想在某一点不去执行任何内容,也就是说我想停止执行了,你知道要怎么做嘛
答:设置断点
32.注册点和中心点的区别和联系
答案:在FLASH IDE下控制元件的坐标,参照点是元件信息面板上选择的参照点,默认是元件中心点;控制元件缩放,参照点是元件中心点,也就