我在这个网站上发现了类似的问题,我尝试了一些方法,但我没有成功。
我希望绘图符号在选择时更改其颜色,以便准确查看选择了哪个符号。我查看了 CPTTestApp(在 Core Plot 示例文件夹中),查看示例,从我在此站点上看到的内容来看,我必须使用绘图参数,以确定是否返回自定义符号。但我不知道这个绘图参数是什么。
如何检测选择了哪个符号,以便更改它的颜色?通过使用索引?
很抱歉对如何使用这个方法有点困惑。我做了研究,我会继续,但也许有人有一个想法。
我找到了一个方法 symbolForScatterPlot 应该给我预期的结果,但我不知道 selectedIndex 是什么变量,我应该如何声明它以及在哪里使用它。我从这里采用了这个方法为不同的点更改 CPScatterPlot 的线条样式, 它看起来像这样:
- (CPPlotSymbol *)symbolForScatterPlot:(CPScatterPlot *)plot recordIndex:(NSUInteger)index
{
CPMutableLineStyle *symbolLineStyle = [CPMutableLineStyle lineStyle];
symbolLineStyle.lineColor = [CPColor blackColor];
CPPlotSymbol *plotSymbol = [CPPlotSymbol ellipsePlotSymbol];
plotSymbol.lineStyle = symbolLineStyle;
if (_selectedIndex != NSNotFound && index == _selectedIndex)
{
plotSymbol.symbolType = CPPlotSymbolTypeDiamond;
plotSymbol.size = CGSizeMake(12, 12);
plotSymbol.fill = [CPFill fillWithColor:[CPColor redColor]];
}
else
{
plotSymbol.symbolType = CPPlotSymbolTypeEllipse
plotSymbol.size = CGSizeMake(8, 8);
plotSymbol.fill = [CPFill fillWithColor:[CPColor greenColor]];
}
return plotSymbol;
}