我是 Flex 的新手,如果我的问题很基本,请原谅我。在发帖之前我已经搜索了很多,可能是我没有找到正确的方向。请将我重定向到导致问题解决的路径。我非常感谢我能得到的任何帮助。
我正在关注这个视频教程。(我正在创建 Mobile Project 而不是像视频中那样简单的 Flex 项目)
http://www.gotoandlearn.com/play.php?id=100
一切都很顺利,直到导师想在应用程序中添加自定义组件。他添加了我在 Flash Builder 4.6 中找不到的 HBox,所以我在我的新组件中添加了 HGroup。现在,当我想在自定义组件中使用在父组件中获取的数据时,它给了我错误。这是代码及其文件名。
文件:SearchHomeView.mxml
<?xml version="1.0" encoding="utf-8"?>
<s:View xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark" title="Twitter Search">
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
<s:HTTPService result="onResult(event)" id="service" url="http://search.twitter.com/search.atom?q=adobe">
</s:HTTPService>
</fx:Declarations>
<fx:Script>
<![CDATA[
import flash.utils.flash_proxy;
import mx.collections.ArrayCollection;
import mx.rpc.events.ResultEvent;
[Bindable]
private var ac:ArrayCollection;
private function onResult(event:ResultEvent):void
{
ac = event.result.feed.entry as ArrayCollection;
trace(data);
trace(ac);
}
private function doSearch(event:MouseEvent):void
{
//service.url = "http://search.twitter.com/search.atom?q=" + tearch.text;
service.url = "http://search.twitter.com/search.atom?q=adobe";
service.send();
}
]]>
</fx:Script>
<s:TextInput x="25" y="26" width="146" id="tearch"/>
<s:Button x="224" y="26" height="33" label="Search" click="doSearch(event)" />
<s:List dataProvider="{ac}" itemRenderer="tweet" x="25" y="92" width="274" height="278"></s:List>
</s:View>
文件:tweet.mxml
<?xml version="1.0" encoding="utf-8"?>
<s:HGroup xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark" width="400" height="300">
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<s:Image width="50" height="50" source="{parentDocument.data.link.getItemAt('1').href}">
</s:Image>
<s:TextBase width="100%" text="">
</s:TextBase>
</s:HGroup>
当我使用 source to be source="{parentDocument.data.link.getItemAt('1').href}
... 时,它会消除错误,但不会在生成的应用程序上显示任何内容。
当我使用 source to be source="{data.link[1].href}
... 它给出了错误,
此行有多个标记:
-1120:访问未定义的属性数据。
-父文档
需要做什么才能在自定义组件中使用项目渲染器?请告诉我解决方案...我坚持了好几次。