24
2015
03

(十五)类

前边认识了文档类和链接类。其实as里边一个类就是一个as文件。有的链接到fla文档,有的链接到元件,当然也可以什么都不链接。

前面我们都是点击flash软件里边的编辑,然后软件为我们创建好了一个类。什么都不链接的类怎么创建呢?

当然可以复制一个as文件,然后改改,变成一个新的类。安装了软件,右键,新建里边应该有“Flash ActionScript 文件”选项,创建出来就是一个as文件(打开文件,你会发现里边什么都没有)。或者在flash软件里边,点击“文件”->“新建”->"ActionScript3.0 类"。或者直接新建一个文本文档,把后缀名改成“.as”。

我的例子:

24
2015
03

(十四)链接类

前边认识了文档类,一个fla只能对应一个文档类。

再来看一下另一种类,我暂且叫它“链接类”,因为这种类是链接到库中的元件的。

24
2015
03

(十三)文档类

前面一直在帧上写代码,其实主要是为了不用考虑import。

现在来试着认识一下文档类。点击舞台上的空白区域,在属性面板里,有一个“类”,这个就是文档类了。

flash里边一般情况下是一个类对应一个as文件(不要较真),比如我们前面经常用到的MovieClip,这里的文档类我们写的是Main(注意不是Main.as),对应的是Main.as,Main.as其实就是一个文本文档。

填写好文档类之后,点击右边的编辑按钮,就会自动创建一个as文档,然后直接保存。默认应该是保存在和fla文件相同的目录下的。

20
2015
03

LoaderInfo-外部加载swf的舞台宽高

当用Loader从外部加载swf时,加载完成时候,读取Loader对象的宽高,得到的是包含swf内所有可视元件的最小矩形的宽高。可能是因为Loader也是继承的DisplayObject,所以Loader的宽高属性和其他DisplayObject的宽高属性是一样的。

那么如何能获取到此swf原来舞台的宽高呢?

答案是,可以用LoaderInfo来读取。LoaderInfo的宽高属性就是swf舞台的宽高。

19
2015
03

自定义组件制作

想做个组件,看了半天都没看懂怎么做,太麻烦了。先把教程保存下来,有空翻翻。

13
2015
03

c/c++学习网站收藏

1、c++中使用json:

1)C++的Json解析库:jsoncpp和boost .http://www.cnblogs.com/lidabo/archive/2012/10/31/2748026.html

13
2015
03

安卓学习网站收藏

1、android Json解析详解(详细代码):http://blog.csdn.net/onlyonecoder/article/details/8490924

2、Android获取webView快照与屏幕截屏的方法:http://www.2cto.com/kf/201302/187492.html

04
2015
03

air for desktop结合c++开发

flash提供的air for desktop可以开发桌面应用,flash本身不能实现的功能可以通过ane来完成。也就是说,可以直接用flash做windows应用程序。

目前公司实际项目中几乎都会有的功能:全屏且置顶、3d显示(用ogre)、硬件交互。

全屏且置顶air本身可以实现;其余两种功能都是flash本身不能实现的,硬件交互可以用ane来实现;3d显示用ane估计是不行,用flasCC应该可以,不过不会用,而且效果效率都不好说。

我在想是否可以通过运行两个exe程序来实现,一个用air来实现,显示操作界面,3d用c++来做,通过ane中的dll文件来实现交互。

03
2015
03

air for android使用中的问题

问题描述:启动时,先显示一下,然后黑屏,再重新显示画面。

原因(来自网友):在有的android 上   调用NetStream.play() 时候  会黑一下;第一次new Video会导致整个AIR黑屏1-2秒,这个bug在很多的air版本出现。

解决方法:在程序的主类初始化函数创建一个Video,存储起来(静态,类属性都可以),AIR程序背景设置成黑色来掩盖这个bug。缺点:启动会迟个1秒左右。

03
2015
03

air for android使用ogre

利用jni,可以在安卓中使用c/c++编写的程序,还可以使用ogre。

c/c++编写的程序会被打包成.so文件,air for android除了可以使用ane,也可以使用.so文件,这样就可以使用ogre了。

具体实现比较困难,需要会在air中使用ane、so,安卓中使用ogre(这个最难,好在有现成的demo)。然后组合起来就行了。安卓中使用ogre本身就存在各种兼容性问题,而且ogre初始化比较慢,所以慎用。