flex怎么读取以下xml文件,并显示在Tree组件中
flex如何读取以下xml文件,并显示在Tree组件中?
这是xml代码:
需要显示为如下效果:
>公司简介
>新闻动态
∨产品中心
>类别管理
∨产品管理
∨产品类别1
∨产品类别2
>成功案例
>关于我们
本人新手,实在是搞不定这个,只好发贴求助,希望各位高手帮帮忙
------解决方案--------------------
[Bindable]
private var xml:XML=<root>
<MenuItem>
<id>1</id>
<title>公司简介</title>
</MenuItem>
<MenuItem>
<id>2</id>
<title>新闻动态</title>
</MenuItem>
<MenuItem>
<id>3</id>
<title>产品中心</title>
<Menu>
<id>6</id>
<title>类别管理</title>
</Menu>
<Menu>
<id>7</id>
<title>产品管理</title>
<Menu>
<id>8</id>
<title>产品类别1</title>
</Menu>
<Menu>
<id>9</id>
<title>产品类别2</title>
</Menu>
</Menu>
</MenuItem>
<MenuItem>
<id>4</id>
<title>成功案例</title>
</MenuItem>
<MenuItem>
<id>5</id>
<title>关于我们</title>
</MenuItem>
</root>;
private function treeLabel(item:Object):String
{
var node:XML=XML(item);
var str:String=null;
if (node.localName() == "MenuItem")
str=node.child("title");
else if (node.localName() == "Menu")
str=node.child("title");
return str;
}
]]>
</mx:Script>
<mx:Tree id="tree"
top="72"
left="50"
dataProvider="{xml}"
labelFunction="treeLabel"
height="224"
width="279"/>
这是前几天的帖子的方法,
还有问题, 搞不定.
看有人跟帖吧.
------解决方案--------------------
用xlst转一下就可以了,java端与flex端都可以转,不过java端需要一个工具jar,flex需要一个SWC,很早的时候都用过,忘记了,但肯定是有的,你网上搜一把吧
------解决方案--------------------
//定义一个URLLoader类
private var loader:URLLoader = new URLLoader();
这是xml代码:
- XML code
<?xml version="1.0" encoding="utf-8"?> <root> <MenuItem> <id>1</id> <title>公司简介</title> </MenuItem> <MenuItem> <id>2</id> <title>新闻动态</title> </MenuItem> <MenuItem> <id>3</id> <title>产品中心</title> <Menu> <id>6</id> <title>类别管理</title> </Menu> <Menu> <id>7</id> <title>产品管理</title> <Menu> <id>8</id> <title>产品类别1</title> </Menu> <Menu> <id>9</id> <title>产品类别2</title> </Menu> </Menu> </MenuItem> <MenuItem> <id>4</id> <title>成功案例</title> </MenuItem> <MenuItem> <id>5</id> <title>关于我们</title> </MenuItem> </root>
需要显示为如下效果:
>公司简介
>新闻动态
∨产品中心
>类别管理
∨产品管理
∨产品类别1
∨产品类别2
>成功案例
>关于我们
本人新手,实在是搞不定这个,只好发贴求助,希望各位高手帮帮忙
------解决方案--------------------
[Bindable]
private var xml:XML=<root>
<MenuItem>
<id>1</id>
<title>公司简介</title>
</MenuItem>
<MenuItem>
<id>2</id>
<title>新闻动态</title>
</MenuItem>
<MenuItem>
<id>3</id>
<title>产品中心</title>
<Menu>
<id>6</id>
<title>类别管理</title>
</Menu>
<Menu>
<id>7</id>
<title>产品管理</title>
<Menu>
<id>8</id>
<title>产品类别1</title>
</Menu>
<Menu>
<id>9</id>
<title>产品类别2</title>
</Menu>
</Menu>
</MenuItem>
<MenuItem>
<id>4</id>
<title>成功案例</title>
</MenuItem>
<MenuItem>
<id>5</id>
<title>关于我们</title>
</MenuItem>
</root>;
private function treeLabel(item:Object):String
{
var node:XML=XML(item);
var str:String=null;
if (node.localName() == "MenuItem")
str=node.child("title");
else if (node.localName() == "Menu")
str=node.child("title");
return str;
}
]]>
</mx:Script>
<mx:Tree id="tree"
top="72"
left="50"
dataProvider="{xml}"
labelFunction="treeLabel"
height="224"
width="279"/>
这是前几天的帖子的方法,
还有问题, 搞不定.
看有人跟帖吧.
------解决方案--------------------
用xlst转一下就可以了,java端与flex端都可以转,不过java端需要一个工具jar,flex需要一个SWC,很早的时候都用过,忘记了,但肯定是有的,你网上搜一把吧
------解决方案--------------------
//定义一个URLLoader类
private var loader:URLLoader = new URLLoader();