1、.fa /.pa/.ba都是由AIR生成的,自定义格式的文件
2、技巧:取得一个元素也可以通过删除它来取得:
var index:int = uint((e.currentTarget as RadioButton).name.split("_").pop());
3、AIR文件拖放:
this.addEventListener(NativeDragEvent.NATIVE_DRAG_ENTER,onDragIn);//拖动的文件被拖到目标上的时候触发
this.addEventListener(NativeDragEvent.NATIVE_DRAG_DROP,onDrop);//拖动的文件在拖到目标上,并且松开的时候触发
this.addEventListener(NativeDragEvent.NATIVE_DRAG_EXIT,onDragExit);//拖动的文件离开目标的时候触发
4、获取被拖进来的文件:
public function onDrop(e:NativeDragEvent):void
{
var dropfiles:Array = e.clipboard.getData(ClipboardFormats.FILE_LIST_FORMAT) as Array;
if(dropfiles.length > 0)
{
var file:File = dropfiles[0] as File;
}
}
5、flash.filesystem.File.separator():String
[只读] 主机操作系统的路径组件分隔符。
在 Mac OS 和 Linux 中,这是正斜杠 (/) 字符。在 Windows 中,它是反斜杠 (\) 字符。
注意:当在字符串中使用反斜杠时,请记住键入该字符两次(例如“directory\\file.ext”)。
6、GeneralResourceManager也可以加载本地文件(AIR中),它都是以二进制的形式进行加载的
7、打包工具把XML、图片、JSON都写成一个二进制文件。并进行压缩:
flash.utils.ByteArray.compress(algorithm:String="zlib"):void
压缩字节数组。将压缩整个字节数组。读取文件的时候,再解压
8、打包图片的规则是:
A、写入图片数据长度
B、写入图片数据
C、写入图片宽
D、写入图片高
9、BinaryLoader使用URLStream来加载文件
URLStream 类提供对下载 URL 的低级访问。数据一下载,便可随即为应用程序使用,这和使用 URLLoader 时需要等到整个文件下载完不同。并且 URLStream 类还允许在完成下载前关闭流。已下载文件的内容将作为原始二进制数据提供。
加载完成后使用public function readBytes(bytes:ByteArray, offset:uint = 0, length:uint = 0):void得到ByteArray
10、加载文件时GeneralResourceManager会
info = new GeneralResourceInfo();
info.url = url;//通过URL确定文件类型
加载完成后BinaryLoader会调用info.resource方法,判断资源类型进行对应的解析
如果资源是.fa\.pa\.ba的文件,就会生成BAAnimationInfo、PAAnimationInfo、FAAnimationInfo类来进行解析
11、Feathers PanelScreen一般不进行实例化,而是与ScreenNavigator配合一起使用
this._navigator = new ScreenNavigator();
this._navigator.addScreen(BUTTON, new ScreenNavigatorItem(ButtonScreen,
{
complete: MAIN_MENU,
showSettings: BUTTON_SETTINGS
}));
12、progressBar.direction = ProgressBar.DIRECTION_VERTICAL;
确定进度条填充的方向为竖直的,但是你得设置progressBar的宽高看起来像竖直的
13、feathers.core.ToggleGroup:控制选择中的两个或更多个iToggle的情况下,只有一个可被选择
14、Screen,ScreenNavigato,ScreenNavigatorItem这3个组合一起使用来实现手机页面的功能
15、Feathers ScrollBar和SimpleScrollBar的区别:
ScrollBar是一个普通的平常在网页上常见的滚动条
SimpleScrollBar是一个只有一个滑块,没有背景,没有上下按钮的滚动条,适合手机上用
16、Feathers Scroller
不会被作为一个独立的容器或组件。通常意味着另一个组件的超类需要支持滚动
比如ScrollText-->Scroller、ScrollContainer-->Scroller
17、直接btn.defaultSkin = new Image(Texture.fromBitmapData((new BtnClass1).bitmapData));
btn.defaultSelectedSkin = new Image(Texture.fromBitmapData((new BtnClass2).bitmapData));
给换钮换肤是不生效的。
实际上是因为Button在addChil的时候会把theme中的默认皮肤方法赋值给stateToSkinFunction,
所以要使我们设置生效的方法就是在addChild我们的button之后将stateToSkinFunction赋值为null
18、clearInitializerForClass可以清除setInitializerForClass引起的引用
19、会先执行tabBar.tabFactory函数,才执行主题中的tabInitializer,所以在tabBar.tabFactory所设置的皮肤都被覆盖无效