Flex:使用自定义LineSeries,以便项目呈现/数据提示仍然有效

时间:2011-07-14 00:53:54

标签: flex flex4 flashbuilder4

简要说明:如果我创建了一个自定义的LineSeries类并将其添加到我的项目中,即使它与原始版本相同,也会丢失数据提示功能。

详细说明: 我正在使用LineChart组件,我需要渲染我的线条,以便它们根据某些值范围更改颜色。所以我修改了LineRenderer,将它应用到我的LineSeries中,一切都运行良好。不幸的是,我后来意识到我需要动态提供范围和颜色,因为它们应该可以自定义。这就是它变得棘手的地方。

这是我用来设置lineRenderer的代码:

var cf:ClassFactory = new ClassFactory(myLineRenderer);
lineSeries.setStyle("lineSegmentRenderer",cf);

我没有找到一种方法来动态更改ClassFactory上的数据而不创建它的实例。但是,如果我创建它的实例,我不能将它设置为样式。如果有人知道如何做到这一点,它将直接解决我的问题。我只需要在myLineRenderer中设置一个数组属性。但对我来说,为什么不能这样做是有意义的。 我是否可以动态创建一个新的类,它是myLineRederer的克隆但是有一个属性已更改? 我可以在myLineRenderer构造函数中添加参数吗?如果是这样,那么如何使用上面的代码?

无论如何,由于那不起作用,我想我需要更改提供给myLineRenderer的数据。为此,我创建了自己的LineSeries,它具有可设置的Array属性,它将添加到传递给myLineRenderer的数据中。而且效果很好。有一点小扭结。一旦我将LineChart系列从LineSeries更改为myLineSeries,我就无法沿着该行移动鼠标光标并获取图表中每个项目的信息。我删除了我对原始LineSeries所做的所有更改,但它没有任何区别。我错过了什么?

现在我陷入了可自定义的颜色范围,没有数据提示和不可自定义的颜色范围和数据提示。前者仍然更好,但我真的需要工作或至少知道为什么这是不可能的。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

查看properties

ClassFactory属性

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/core/ClassFactory.html#properties

我认为这完全符合您的需要。