六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 107|回复: 0

Flex中将字符串数组转化为对象数组的例子

[复制链接]

升级  59.33%

39

主题

39

主题

39

主题

秀才

Rank: 2

积分
139
 楼主| 发表于 2013-2-7 20:57:56 | 显示全部楼层 |阅读模式
转自:http://elanso.com/ArticleModule/GJUpS4GJVIJhNOVwONLmPUIi.html

    在前面的Flex中利用StringValidator类验证字符串合法性的例子中提到了字符串合法性的验证,接下来的例子演示了如何将字符串数组转化为对象数组从而使其在Flex中可以作为数据提供源来使用。

下面是完整代码:

Download: main.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        layout="vertical"
        verticalAlign="middle"
        backgroundColor="white">
  
    <mx:Script>
        <![CDATA[
            private var arrayOfString:Array;
            private var arrayOfObject:Array;
  
            private function init():void {
                arrayOfString = ["test", "test", "fork", "test"];
                arrayOfObject = stringArrayToObjectArray(arrayOfString);
            }
  
            private function stringArrayToObjectArray(sourceArray:Array, key:String = "label"):Array {
                var returnArray:Array = new Array();
                var idx:uint;
                var len:uint = sourceArray.length;
                for (idx=0; idx<len; idx++) {
                    var obj:Object = {};
                    obj[key] = sourceArray[idx];
                    returnArray.push(obj);
                }
                return returnArray;
            }
        ]]>
    </mx:Script>
  
    <mx:ApplicationControlBar dock="true">
        <mx:Button label="Array of String"
                    click="list.dataProvider = arrayOfString;" />
        <mx:Button label="Array of Object"
                    click="list.dataProvider = arrayOfObject;" />
    </mx:ApplicationControlBar>
  
    <mx:List id="list"
            width="100"
            rowCount="6"
            initialize="init();" />
  
</mx:Application>
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表