首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > flex >

flex 文件批量上传 datagrid的行状态清除有关问题【图】

2012-04-18 
flex 文件批量上传 datagrid的行状态清除问题【图】用flex做了个文件上传,第一次上传显示在datagrid中进度条

flex 文件批量上传 datagrid的行状态清除问题【图】
用flex做了个文件上传,第一次上传显示在datagrid中进度条显示正常,但是上传完后吧datagrid绑定的arrayCollection清空后,再次浏览文件确定时(此时还未上传),前N条(N=第一次上传文件个数)会变为100%,该如何在第二次上传时进度条的初始值为0%?为什么会导致第二次的进度条为100%?




[解决办法]
Flex里面的Renderer因为效率的原因是复用的,也就是说你的列表中的Renderer每次只是实例化看得见的那部分,那部分的Renderer被反复使用。

所以ItemRender里面要用override function set data来设置进入时的状态,它自己里面的状态是不能依赖的。

如:
 override public function set data(value:Object):void {
if( value != null ) {
super.data = value;

if( value.downloaded == "1" {
label.text = "100%";
} else {
label.text = "0%";
end

要根据value本身的属性来决定自己显示的内容。
[解决办法]
1楼正解,你不用条件直接在set data里用setProgress设个随即数试试,看变不变,如果不变,那你将bar的mode改为manual改成0,然后再换回成原来的mode,看行不行

热点排行