Tag Archive for 'Flex'

在Linux下使用Flash Builder

Adobe官方就是不肯弄个可以在Linux下使用的FB,不过有个牛人自己移植了一下,果然能用了。
具体的可以看 http://code.google.com/p/fb4linux/

如果是 Eclipse 3.3,安装方法可以看这篇
但是Eclipse 3.4开始就找不到 Add->Extension Location 了,不过方法更简单,就是下载他提供的文件解压后,放到 Eclipse目录里的 dropins 目录中就行,也可以直接做个连接放进去,重启eclipse就可以看到能用FB了。

不过那个压缩包里是没有Flex sdk的,自己去下载后配置下就能用了。

Flex中Container的data属性绑定

一直在玩AsWing,好久都没碰Flex,最近由于工作需要又用上了,今天碰到个问题

要用到一个TileList组件,并且自定义itemRenderer,itemRenderer中的数据我就想通过dataProvider来提供数据绑定,下面是TileList的部分代码

<mx:TileList xmlns:mx="http://www.adobe.com/2006/mxml" width="100%"
			dataProvider="{items}"
			itemRenderer="CustomItemRender">

items 是一个 ArrayCollection,里面放 itemRenderer的数据绑定对象,在 CustomItemRender中通过 Containerdata 属性得到绑定对象

现在需要写一个ItemModel 类,它的实例会放到items中,作为itemRenderer 的绑定数据,即itemRenderer中的data属性就是ItemModel的实例引用
ItemModel的部分代码

[Bindable]
public class ItemModel extends EventDispatcher {
	public var name:String;
}

然后是 CustomItemRender.mxml
注意我在绑定 Label text的时候用了 (data as ItemModel).name

<?xml version="1.0" encoding="utf-8"?>
<mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml">
	<mx:Label text="{(data as ItemModel ).name}" />
</mx:VBox>

测试的时候,运行是没啥问题,往items里添加new ItemModel() 的时候CustomItemRender中的Label正确显示了ItemModel中的name属性,但是控制台输出了

warning: unable to bind to property ‘name’ on class ‘CustomItemRender’

绑定不了?? 我尝试在运行时修改ItemModel实例的name属性,但CustomItemRender中的Label不会改变……

哪里错了?? 围绕这个问题我断断续续搞了一天…. 试了各种办法后都没搞定
不过就在刚才,我把CustomItemRender中的

<mx:Label text="{(data as ItemModel).name}" />

改成

<mx:Label text="{data.name}" />

这样就行了….. – -
我只是想加个as ItemModel 可以有代码提示,并且还是为了以后的编程中,能确保data的数据类型

推荐 FlexWiki

如果您正在翻译一些老外写的 Flex/AS3 的文章,发布在blog的同时,俺建议您也发一份到 http://wiki.flexsearch.cn,这样的共同创作方式可以结合大家的力量共同完善这些文章的翻译,并且可以避免重复翻译。

关于 FlexWiki 可以看下这里 请加入FlexWiki计划,为Flex英文资料中文化贡献您的力量

AMFPHP 增加 AMF3/Flex支持

现在AMFPHP已经增加了AMF3支持,这意味着开发者们现在已经有3个开源的PHP包用于FlexRemoting
详情请看 AMFPHP Adds AMF3 / Flex Support