AsWing推出了一款新的皮肤 Orange,以橙色为主,非常清新。
大家可以点击下面的链接预览下
http://demo.aswing.org/showcase/ComSet_OrangeSkin.swf
一直在玩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中通过 Container的data 属性得到绑定对象
现在需要写一个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的数据类型
业余时间比较少,人也比较懒 ,就加了loading提示和原图预览功能
预览地址 : http://harryxu.cn/demo/yfbDemo2.swf
Yupoo测试帐号: iceorange (随便找的)
源代码版本库地址 http://harryxu.googlecode.com/svn/trunk/yupooflashbrowser/ 可以通过svn客户端取出
现在这个版本已经基本达到我最初想要的功能了,但是决定持续的完善这个程序。
计划下一次加入的功能
UI方面:
增强连接复制功能,比如生成html链接,ubb代码等…
加入分页,现在这个只显示前100张 – -
增强搜索,多标签,关键字搜索等…
其他,细节,用户体验方面的改进等…. & 没想好的
API方面
目前除了Yupoo还准备支持google的 picasaweb和flickr,可 能都会自己写API – -
至于什么时候开工,就比较难说料,在现在程序的基础上再继续写下去是不行了,估计要全部重构
完工更是不知道要等到猴年马月
搞了张 Mac OS X 的安装光盘(for x86),在笔记本上装了一下,哈哈,基本顺利,现在俺的电脑里叉屁和苹果共存了,嘿嘿
看截图oh
哈哈,虽然装上了,不过还有些小问题搞不定,无线网卡8能用了,只能拖个尾巴上网,声音也有问题,耳机插上没用,只有电脑自带的喇叭会叫
不过总算是体验到水果系统了,very帅滴,但是毕竟这些年都是用win,要完全脱离还是不太可能,慢慢玩吧,哪天吧水果玩转了,就把叉屁赶走,哈哈。
在Flex Builder3 Beta2 中,自动编译后得到的swf,在bin目录中只有一个,没有了以前那个带”-debug”后缀用于debug的swf,而现在生成的swf就是用于debug的swf文件,所以体积会比较大,并且如果在安装了debug版本的flashplayer的浏览器中运行,会弹出一个连接到调试主机的窗口。
具体原因可以参见这篇文章 A Very Important Change From Flex Builder 2 To Flex Builder 3
如果要生成一个发布版的swf,那么就是在flexbuilder的菜单栏中点 Project -> Export Release Version 然后选择相应的Project和Appliction 文件,点Finish后,就会在项目中生成一个bin-release文件夹,里面就是正常的发布版swf文件了



