《2022年Flex面试题一 .pdf》由会员分享,可在线阅读,更多相关《2022年Flex面试题一 .pdf(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1.使用 Flex Bulider3 建立一下新的 .mxml 的页面时默认的背景是蓝色的,请问用什么办法能修改掉此背景颜色,以至于下次创建时背景不是为默认的蓝色的呢 ?请写出你认为正确的方法。答:修改 sdkframeworksprojectsframeworkdefault.css里 Application 的backgroundColor: #0000FF;2.使用 Flex Bulider3 如何跟踪程序 ?答:我知道的三种1.trace() 2.设置断点3.当不在调试模式时可以调用as的 Alert.show() 或 js 的 alert() 如:navigateToURL(new
2、URLRequest(javascript:alert(traceMsg), _self);3.请问 enterFrame和 timerEvent 这 2个事件有什么区别 ?请说下具体的使用方法和相关的使用场合?答: enterFrame是按帧发生,timeEvent 是根据设置的 Timer 类参数发生。如:用 ENTER_FRAME 控制小球圆周运动:addEventListener(Event.ENTER_FRAME,ballMove);用 TIMER 控制小球圆周运动:var myTimer:Timer=new Timer(83.3,0);/ 关于该数的设置见TIMER 类的说明myT
3、imer.start();myTimer.addEventListener(TimerEvent.TIMER,ballMove);4.请说下你理解AS3 的事件机制是什么机制?你认为正确的就可以说出来.名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 11 页 - - - - - - - - - 答:建立一个完整的事件机制需要四个步骤:注册侦听、分发事件、侦听事件、移除侦听。建立成功后,触发事件,事件流会进行捕获、目标和冒泡三个阶段。捕获阶段由FP 沿显示列表从根容器往下层
4、层寻找触发事件的目标对象,找到后即进入目标阶段。然后,事件对象从目标对象再次沿显示列表往上移动至根容器,遇到注册侦听的节点就调用侦听函数。如果想中途中断冒泡,可以使用stopPropagation 。5.请问 addEventListener里面有几个参数 ,你能说出具体的使用方法嘛?答:addEventListener(type:String, 事件的类型listener:Function, 监听函数useCapture:Boolean = false, 是否打开捕获功能priority:int = 0, 监听器优先级别useWeakReference:Boolean = false 是否使
5、用弱引用)6.请问我想判断一个字体是否是数字,用什么办法去判断呢 ?答:isNaN(parseInt(strPara) 或 strPara is Number7.请问我想判断一个字符或者一个对象的类型怎么判断呢?答:typeof(obj)8.请问你了解internal 控制符么 ?能说下具体使用方法和场合嘛?答: internal是默认的包内访问, 体现了封装思想和package模块化思想。举例来说, A 类需要使用 B 类和 C 类的方法和属性,但又不希望它们名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - -
6、 - - - - - 第 2 页,共 11 页 - - - - - - - - - 对其他类暴露, 只要将 A,B,C 放入同一包内, 包外的其他类就无法使用B,C 类了。9.我想在某一点不去执行任何内容,也就是说我想停止执行了,你知道要怎么做嘛 ?答:设置断点10.请问 undefined 和 null 是否一样 ,如果不一样能否说出其中的区别呢?答: undefined 是尚未初始化的无类型变量或未初始化的动态对象属性的特殊值。 null 是一个可以分配给变量的或由未提供数据的函数返回的特殊值。它们的相同之处在于都未初始化,不同在于undefined 是无类型或动态类型的。如:var v1
7、;trace(v1);/undefinedvar v2:*;trace(v2);/undefinedvar v3:Object;trace(v3);/null11.创建常量知道怎么创建嘛?说下你是怎么创建的 .答:const PI:Number = 3.1415926; public static const STARTUP:String = startup;12.请问用什么方法自定义一个事件呢?说下具体的方式 .答:(1)扩展 Event 类或其子类(2)定义一个 static const常量作为事件的type 传入构造函数(3)定义一个私有变量作为事件的Data 保存数据,并为其添加 ge
8、tter和 setter名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 11 页 - - - - - - - - - (4)覆盖 toString()和 clone()方法13.请问怎么样检测本机的内容呢,比如说 ,我想知道本机的操作系统,是否有视频等这些 .答:flash.system.Capabilities.os 当前的操作系统flash.system.Capabilities.hasStreamingVideo系统是否可以播放视频流14.请问用什么办法解决安全域的
9、问题?如果你不知道安全域的问题的话,可以在本机中绑定一下图片,然后再放到服务器上,就会出现此问题了 .答:配置安全沙箱的策略文件crossdomain.xml放置到服务器根目录,如:15.有三种基本数字类型: number, int, 和 uint 请问有什么区别 .具体说一下.答: number 数字类型包含浮点型(正 0 负); int 整型 (正 0 负); uint(无符号整型)16.parseInt此方法转化为int 型的方法 ,请问你知道此方法的第二个参数是什么意思嘛 ?答: 指定第一个参数字符串的进制, 范围为 2-36。 例如 parseInt(“100”,2)=417.Mat
10、h.round( ), Math.floor( ) 和 Math.ceil( ) 三个方法都是四舍五入,请问有什么区别 ?名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 11 页 - - - - - - - - - 答:round 是取最接近的整数,即原数0.5 后取整; floor 向下取整;ceil 向上取整18.请问一个数组里可以放不同的类型嘛?答:可以,如var x:Array = a,1,new Button();19.var letters:Array = a
11、, b, c; 我想在这个数组里搜索c字符 ,请问怎么办 ?答:for(var i:* in letters) if(lettersi = c) trace(cs position is + i); 或if(letters.toString().indexOf(c) 0) trace( cs position is + letters.toString().indexOf(c) );20.怎么样转换数组为字符串,怎么样将字符串转化为数组?答:数组 -字符串: trace(new Array(a,b,c).join().toString();字符串 -数组: var arr:Array = ne
12、w String(a,b,c).split(,);21.我想创建的视图居中怎么办?答:布局策略里面限定为居中,即horizontalAlign=center verticalAlign=middle; 或者在每个控件都以舞台的中心作为相对坐标来计算各自的 xy 值。22.请问知道层级的概念嘛?如果知道请问怎么样交换2 个组件的层级呢?答:层级表示的是显示对象在显示列表中的位置,从第0 层开始,位于最下面。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 11 页 - - -
13、 - - - - - - 交换组件层级可以使用id 交换,也可以直接交换层级索引。如:my_sprite.swapChildren(my_ball2, my_ball1);my_sprite.swapChildrenAt(2, 1);23.请问你知道 loader,URLLoader,URLStream 这个三种动态加载资源的具体使用场合 ,以及有什么区别嘛 ?答:(1)Loader 像 2.0 中 MovieClip 的 loadMovie 功能,用于加载外部的图片和 SWF 文件。使用load() 方法来启动加载。被加载的显示对象将作为 Loader 对象的子级添加。 在使用 Loader
14、 加载数据, 添加侦听事件时, 一定要给 Loader的 contentLoaderInfo属性增加事件,而不是给 Loader对象增加事件。(2)URLLoader 类以文本、二进制数据或URL 编码变量值对的形式先从URL 下载数据,然后才将数据用于ActionScript 。它会发出有关下载进度的通知,通过bytesLoaded和 bytesTotal 属性以及已调度的事件,可以监视下载进度。(3)URLStream 类提供对下载URL 的低级访问。数据一下载,便可随即为应用程序使用,这和使用 URLLoader 需要等到整个文件下载完不同。并且 URLStream 类还允许在完成下载前
15、关闭流。已下载文件的内容将作为原始二进制数据提供。(4)URLStream、URLLoader、Loader 等读取外部数据的类,类里的load方法参数值是URLRequest 对象。如:var request:URLRequest=new URLRequest(httpURL 地址 );loader.load(request);24.如何把 MouseEvent 的 localX 和 localY 属性转化成全局坐标 ?名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 1
16、1 页 - - - - - - - - - 答:全局坐标系: stageX,stageY 。原点位于舞台左上角。本地坐标系: localX,localY 。原点位于相对组件的左上角。内容坐标系: contentMouseX 和 contentMouseY。描述鼠标相对于整个容器内容的位置, 用于当子组件的高或宽可能超出容器自身设置高宽的情况。转换方法:contentToGlobal 内容到全局坐标contentToLocal 内容到本地坐标globalToContent 全局到内容坐标globalToLocal 全局到本地坐标localToContent 本地到内容坐标localToGloba
17、l 本地到全局坐标25.请问我现在有一个正方形的图片,我想把他做成圆形 ,有什么办法呢 ?前提是用 flex 或者 as3答:不清楚,是不是用BitMapData 的 draw 方法实现呢?会的朋友请告诉我。26.请问新创建的一个sprite 能否被直接加到ui 容器里 ?如果不能请说出用什么办法能加入 .答:不能。先将sprite 加入一个扩展自UIComponent 的类,再加入UI容器。27.我怎么设置把一个文本框,设置成一个密码框 ?名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - -
18、 第 7 页,共 11 页 - - - - - - - - - 答:将 displayAsPassword属性设置为 true28.我想在文本框里只能输入abcd,有什么办法能做到呢 ?如果我想输入除 abcd以外的其它都能输入又怎么做呢?答:restrict=”a-d” 。restrict=(a-d)29.请问 condenseWhite 这个属性在 TextInput 里是表示什么意思 ?答:仅会应用于通过htmlText 属性设置的文本,默认为false。当设置为 true 时,会删除文本中额外的换行和空白。30.我现在刚创建的文件的text 为 this is a text,我想设置光
19、标在is 上,请问怎么设置 ?答:触发事件,在侦听函数上让selectionBeginIndex=5,selectionEndIndex=631.请问怎么样在文本框里添加超链接?答:(1)使用文本框的 htmlText 属性添加必须以 event:开头的超链接,如 这儿 (2)添加对 TextEvent.LINK 事件类型的侦听,如addEventListener(TextEvent.LINK,clickLink);(3)event:后面的字符串将被包含在侦听事件的text 属性里,如private function clickLink(event:TextEvent):voidvar cmd
20、Array:Array = event.text.split(|);if(cmdArray0=geturl)navigateToURL(new URLRequest(cmdArray1,cmdArray2);32.我想获取系统里的字体,请问怎么办 ?名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 11 页 - - - - - - - - - 答:import flash.text.Font;var allFonts:Array = Font.enumerateFonts(
21、true);allFonts.sortOn(fontName, Array.CASEINSENSITIVE);var fontsLength:int=allFonts.length;for(var i:int=0;ifontsLength;i+)trace(字体名称 :+allFontsi.fontName+ 字体样式:+allFontsi.fontStyle+ 字体类型 :+allFontsi.fontType)33.substring( ),substr( ), slice(),请说下 3 种解析字符串的不同之处,以及适用场合 ?答:substring(v1,v2): 截取从 v1 到 v
22、2 的字符串,包括v1,不包括 v2substr(v1,v2): 从 v1 开始,截取 v2 长度slice(v1,v2):类似于 substring,不过可以接受负值参数,表示倒数第几位34. var fruits:XML =AppleOrangePearWatermelon;以下有一个字符串 ,我现在知道了color 为 orange,我想知道此 color 相对应的 name节点的值 ,我应该怎么做 ?答:原题的 XML 不规范。找到name节点值可以用fruits.fruits(color=orange ).name35.请说下目前使用flex 和后台交互的几种方法,以及适用场合 .答
23、:(1)基于 AMF 消息格式的 RemoteObject组件,如 Lcds/BlazeDs,AMFPHP 等。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 11 页 - - - - - - - - - (2)基于 SOAP 消息格式的 WebService,对于使用 SOAP 的服务器方便连接。(3)基于纯文本或拥有良好格式的XML 消息格式的 HTTPService 组件。一般来说,选用高效稳定的RemoteObject中间件。36.我现在想在 flex 里调用 J
24、S方法,我要怎么办呢 ?答:直接在 AS 中使用 ExternalInterface.call()来调用 JS方法。如:import flash.external.ExternalInterface;ExternalInterface.call(simpleJSFunction);ExternalInterface.call(simpleJSFunctionWithParameters,myParameter);var result:String=ExternalInterface.call(simpleJSFunctionWithReturn);37.我想用 JavaScript调用 Act
25、ionScript 函数 ,我要怎么办呢 ?答:使用 ExternalInterface.addCallback在 JavaScript里设置对 Flex 的回调方法并且在JavaScript里调用 ActionScript 方法。AS:ExternalInterface.addCallback(function1,callback1);privatefunctioncallback1():voidAlert.show(callback1executed);JS:containerswf.function1();38.FileReference 请说下此对象的几个相关事件答:browse(ty
26、peFilter:Array = null):Boolean 显示一个文件浏览对话框,让用户选择要上载的文件。cancel():void 取消正在对该FileReference 对象执行的任何上载或下载操作。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 11 页 - - - - - - - - - download(request:URLRequest, defaultFileName:String = null):void 打开对话框,以允许用户从远程服务器下载文件.upload(request:URLRequest, uploadDataFieldName:String = Filedata, testUpload:Boolean = false):void 开始将用户选择的文件上载到远程服务器。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 11 页 - - - - - - - - -