2

我在 iOS 应用程序中有一个 Core Plot 散点图,用于显示一些数据。当视图加载时,我计算绘图的理想范围以适合屏幕上的数据。我允许用户缩放和平移,但包含一个按钮以将图形返回到那些理想范围。

该按钮起作用并且范围适当地改变,但改变可能有点不和谐。由于突然的变化,人们失去了他们对情节的心理“地图”。根据需要为平移和缩放设置动画会更好,就像地图应用程序一样。

我没有看到 Core Plot 内置任何允许动画的东西,但我可能错过了一些东西。有没有办法用Core Plot(或它的一个分支)或一种相当简单的手动方法来做到这一点?

4

2 回答 2

5

如果现在有人对此感到疑惑,Eric 的修复程序已经到位,您现在可以使用以下代码为范围设置动画:

CPTPlotRange *xRange = [CPTPlotRange 
                        plotRangeWithLocation:CPTDecimalFromDouble(location) 
                                       length:CPTDecimalFromDouble(length)];

[CPTAnimation animate:plotSpace // CPTPlotSpace *
             property:@"xRange"
             fromPlotRange:plotSpace.xRange
             toPlotRange:xRange
             duration:5.0
             withDelay:0
             animationCurve:CPTAnimationCurveCubicInOut
             delegate:nil];
于 2014-01-31T09:25:39.380 回答
1

目前可用的最佳解决方案是使用计时器以小幅度调整范围。我正在研究一个更通用的解决方案,但它还没有准备好包含在公共代码中。观看Core Plot 问题 #398上的状态,以了解修复何时可用。

于 2012-11-27T02:32:12.207 回答