如果是flex,则转换类型

时间:2015-06-22 06:42:46

标签: java actionscript-3 flex

我正在使用Flerry作为我的Flex桌面应用程序的Java-Flex桥。

如何将Java中的List转换为Flex中的ArrayCollection

Flex代码: -

[Bindable]public var screenList:ArrayCollection;
<flerry:NativeObject id="windowControllerObj" source="ls.window.EnumAllWindowNames"
  singleton="true" fault="windowControllerObj_faultHandler(event)">
    <flerry:NativeMethod id="getWindowNames" name="getAllWindowNames" 
      result="windowControllerObj_resultHandler(event)"
      fault="getWindowNames_faultHandler(event)"/>
</flerry:NativeObject>

protected function windowControllerObj_resultHandler(event:ResultEvent):void
    {
        Alert.show("success");
        screenList.addAll(event.result as List);
        Alert.show(screenList.toString());
    }

Java代码: -

public List<String> getAllWindowNames() {
   return List<String>;
}
  

1067:类型为spark.components的值的隐式强制:列表为不相关的类型mx.collections:IList。 LSFinal.mxml / LSFinal / src第2289行Flex问题

可以转换哪些数据类型以及如何?

1 个答案:

答案 0 :(得分:1)

您尝试将数据类型mx.collections:IList转换为UI组件类型spark.components:List,这当然会导致异常。 尝试按照错误消息提示并使用mx.collections:IList

  screenList.addAll(event.result as IList);