等待richtext更新

时间:2011-09-07 21:10:00

标签: flex flash-builder

我正在做一个像新闻门户这样的简单应用程序。 main.mxml通过newsRenderer.mxml显示每条新闻的简短视图。当用户点击任何一个时,新闻的全部内容将在main.mxml上打开。 我正在使用richtext组件来获取完整内容。我可以从newsRenderer获取点击新闻的索引,并将其分配给richtext,如下面的代码。

newsRenderer.mxml

        private function choosen():void
        {
            borderContainer.addEventListener(MouseEvent.CLICK, send, false, 0);
        }
        public function send(event:Event):void{
            FlexGlobals.topLevelApplication.index = data.id; //news id
        }

main.mxml

internal var index:int; 

protected function richText_creationCompleteHandler(event:FlexEvent):void
    {
        getNewsByIDResult.token = newsService.getNewsByID(index);
    }

<s:RichText id="richText" includeIn="fullContent" left="20" right="20" top="50"
            creationComplete="richText_creationCompleteHandler(event)"
            text="{getNewsByIDResult.lastResult.content}"/>   

问题在于,当用户一个接一个地打开新闻时,它正在显示旧的新闻内容,或者在一秒钟后更新。我如何强制richtext等待更新结束。我找不到任何有关此事件的事件监听器。

1 个答案:

答案 0 :(得分:1)

自定义业务规则没有事件侦听器(即在显示之前加载内容)。我想你可以使用VALUE_COMMIT或其他东西,但我个人只想重新考虑你的应用程序的流程:

  1. 获取所有包含id和简短模糊的文章
  2. 在项目渲染器中显示所有带有blurb的文章
  3. 项目渲染器侦听用户单击并从服务器检索其余文章(显示加载动画)
  4. 返回数据后,更新文本并调整大小以向用户显示内容