关于FLEX中的隐藏方法(mx_internal)
最终我决定还是用“隐藏”这个不是很合适的词。mx_internal是一个自定义命名空间,至于“命名空间”到底是什么就不在这里说了。总之,当我们在代码头部写上:
use namespace mx_internal
(如果是.AS文件,需要手动import mx.core.mx_internal,注意这个不会有代码提示)
那么所有以mx_internal为命名空间的方法就会成为和public一样的方法,也可以在代码提示中正常地列出(会被标记为黄色)。
下面列举几个mx_internal方法
contentPane
所有的UI容器都会有这样一个属性,他的作用是在原有的容器里再套上一个子容器,方便放置内容。但要注意,contentPane不一定有值,某些时候就是直接放在原来的容器里。(具体的我就没看了)
由于有这样一个东西,而这个东西的mouseEnabled默认为true,所以,当你将Canvas和Canvas里的组件mouseEnabled设置为false后,会发现Canvas里的组件还是会遮挡下面的鼠标事件。这就是因为在Canvas和组件之间隔了一层依然可以触发鼠标事件的contentPane。
因此,只要设置Canvas的contentPane.mouseEnalbed=false即可
$addChild
众所周知,Canvas,Application容器是不能直接addChild一个Sprite的。其实不然,$addChild调用的是super.addChild(),参数是DisplayObject,所以即使是Sprite也可以载入。
UI容器的addChild执行了非常多的操作,换成$addChild,我们有理由相信会出现各种各样的问题。这个例子只是为了说明,UI控件与容器其实没有本质区别,禁止直接加载Sprite,是为了强制你使用UI控件。毕竟不愿意用UI控件的话,还用FLEX干什么?
createdComponents
Repeater是制作论坛的首选,但我用这个用得比较少。
总之,第一次用的时候,我死活找不到如何获得Repeater中的某个特定对象,所以就找到了这个createdComponents属性,它里面包含了Repeater的对象数组。
renderArray
DataGrid的所有itemRenderer对象,都在里面- -
首先,不建议大家用这个,itemRenderer有特殊的生成及销毁方式,它的实例引用是非常不靠谱的。正常来讲,都应该用数据来进行两者之间的交互。
一定要用的话,renderArray是一个2维数据,一行,一列。其实这个属性基本没什么用,只要DataGrid一滚动,整个对应关系就乱掉了。
从上面可以看出,这些方法很多都是些不是很靠谱的方法,他们并不稳定。这就是他们是mx_internal而不是public的原因,
一般情况下,强烈不建议使用他们。除非,你实在走投无路。而且他们随时
相关文档:
首先要有一个简易的服务器,建立一个站点,然后站点下存放
1:crossdomain.xml 这个是跨与域策略文件,用于指定域通过Flash
Player访问本域的资源(如果服务器在本机就没有这个必要)但是远程的话就要(建议要)
文件内容:
<cross-domain-policy>
<allow-access-from domain="*" /> ......
在项目中自定义一个CheckboxGroup,这个控件里面包含多个Checkbox想控制Checkbox的行为:所以使用查找一下帮助使用flex中经典方法:getDefinitionByName 函数的使用
public function getDefinitionByName(name:String):Object
返回参数 name 中指定的类引用
参数 name:String - 类名称
返回 Object - 返回参数 name 中 ......
需求:
开发flex的过程中遇到一个问题。flex的项目需要在客服端显示一个局域网类的一台服务器的文件目录结构,并且要能够点击访问。
预想:
flex在以前的版本里面没有file类,这个可以用java代码在后台进行处理,生成xml文件。前台的flex到相应目录下面读取数据即可。
困难:
flash被下载到客服端,有严格的安全 ......
<?
xml
version
=
"1.0"
?>
<!-- Simple example to demonstrate the Alert control. -->
<
mx:Application
xmlns:mx
=
"http://www.adobe.com/2006/mxml"
>
&n ......
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
<fx:Script>
<!--[CDATA[
import mx.rpc.ev ......