Core-Plot 未调用 'plotWasSelectedAtRecordIndex' - 已修订



我想在我的iPhone应用程序中为图形添加触摸。但是,我似乎无法plotWasSelectedAtRecordIndex注册电话。在浏览了一堆其他相关问题和其他地方的教程之后,我似乎无法弄清楚我错过了什么。

我已经能够注册对shouldHandlePointingDeviceCancelledEvent plotSpace方法的调用。

模拟器上应用程序性能最明显的变化是我可以拖动我的绘图空间,这实际上不是我想要的。

我尝试将<CPTScatterPlotDelegate><CPTPlotSpaceDelegate>单独和一起添加到我的控制器标头中,并将方法包含在我的实现中,并为图形、plotSpace、绘图和各种组合设置委托。

我已经回顾了PlotGallery示例中的GradientScatterPlot以及CPTestApp。

显然,我走错了路。那么,我的问题:获得plotWasSelectedAtRecordIndex回复的关键要素是什么?

  1. 确保委托类(通常是拥有图形的视图控制器)实现<CPTScatterPlotDelegate>协议。

  2. 在散点图委托类中实现以下方法之一:

    -scatterPlot:plotSymbolWasSelectedAtRecordIndex:
    -scatterPlot:plotSymbolWasSelectedAtRecordIndex:withEvent:
    
  3. 将散点图的delegate设置为委托对象。

  4. plotSymbolMarginForHitDetection设置为"合理"值,通常是绘图符号的大小。

  5. 绘图空间上将allowsUserInteraction设置为 NO 以禁用滚动和缩放。绘图委托仍将工作。

相关内容

  • 没有找到相关文章

最新更新