如果chartPanned事件不起作用,如何解决问题

时间:2019-05-23 11:31:10

标签: angular typescript charts nativescript gesture

(Nativescript 5.3,Angular)

我使用nativescript-ui-samples应用程序评估和测试了我们应用程序的图表功能。 (开始于:chart-behaviors-pan-zoom.component)

需要移动/平移图表,然后根据上一时间段的其他(更多)移动值重新加载。

我的问题是在图表内获取任何平移事件。例如,在图表外部的标签上,平移事件起作用。

我尝试了各种可能性来举办活动,但没有一个在起作用:

  1. 试图将RadChartesianChart放置在网格布局中以获取事件

    在网格布局上使用isUserInteractionEnabled="false"isPassThroughParentEnabled="true"进行了尝试

  2. 我试图在RadChartesianChart上的html中调用以下方法:method(chartPanned)=“ chartPanned()”

  3. 我尝试在RadChartesianChart上的html中调用以下方法:method(chartPanned)=“ chartPanned()”

  4. 使用CategoricalAxis与数字2和3进行了相同的尝试

  5. 试图在组件ts文件中注册事件

TypeScript代码,如编号5所述

ngOnInit() {
    this._categoricalSource = new ObservableArray(this._dataService.getCategoricalSource());

    const chart = this.theChart.nativeElement as RadCartesianChart;
    console.log('mychart');
    console.log(chart);

    // NOT working !!!
    chart.on(GestureTypes.pan, function () {
        console.log("chart Pan deltaX");
    });
    chart.on('chartPanned', function () {
        console.log("chartPanned Pan");
    });
    chart.on('chartPanFinishedEvent', function (args: PanGestureEventData) {
        console.log("chartPanned Pan deltaX:" + args.deltaX + "; deltaY:" + args.deltaY + ";");
    });
}

HTML:

<RadCartesianChart row="1" #theChart tkExampleTitle tkToggleNavButton isUserInteractionEnabled="false" isPassThroughParentEnabled ="true">

    <BarSeries tkCartesianSeries [items]="categoricalSource" categoryProperty="Country" valueProperty="SecondVal">
        <LinearAxis tkBarVerticalAxis horizontalLocation="Right" allowZoom="true" allowPan="false"></LinearAxis>
    </BarSeries>

    <LineSeries tkCartesianSeries [items]="categoricalSource" categoryProperty="Country" valueProperty="Amount">
        <LinearAxis tkLineVerticalAxis horizontalLocation="Left" allowPan="false" allowZoom="true"></LinearAxis>
    </LineSeries>

    <CategoricalAxis tkCartesianHorizontalAxis allowPan="true" allowZoom="false"></CategoricalAxis>

</RadCartesianChart>

如果我在图表ui中平移,我希望获得引发平移事件。

0 个答案:

没有答案