0

我一直在尝试自定义 Shinobicharts 中的工具提示,但它无法正常工作。我猜这是我添加造成问题的十字准线样式的方式。我最终只是想自定义工具提示的标签,因为一旦我添加了自定义十字线样式,它就变成了全黑。

无论如何,我的代码如下所示:

    let crossHairStyle = SChartCrosshairStyle()
    crossHairStyle.lineColor = UIColor.whiteColor()

    let chart = ShinobiChart(frame: view.bounds)
    chart.licenseKey = ""
    chart.datasource = self
    chart.delegate = self
    chart.gestureDoubleTapResetsZoom = true
    chart.frame = CGRectMake(0, 0,width,0.9 * height)
    chart.crosshair.style = crossHairStyle
    chart.crosshair.tooltip.backgroundColor = UIColor.whiteColor()
    chart.crosshair.tooltip.label.backgroundColor = UIColor.whiteColor()
    chart.applyTheme(customTheme)

正如我所说,我无法设置标签的背景色,我不知道如何进行。

任何建议,将不胜感激。

4

1 回答 1

0

我为 ShinobiControls 工作(作为免责声明)。

您看到黑框的原因是十字准线工具提示使用您的样式对象。SChartCrosshairStyle 的属性在创建时被初始化为 nil,因此当应用于十字准线和工具提示时,样式中的任何 UIColor 都将为黑色,因为当您将 nil UIColor 对象应用于 UI 元素时会发生这种情况。

当前有一个错误,您无法直接在工具提示上设置颜色(这已在本地修复,因此它应该很快就会发布)。但是,您可以使用十字准线的样式对象设置工具提示的颜色。例如:

let chart = ShinobiChart(frame: view.bounds)
chart.licenseKey = ""
chart.datasource = self
chart.delegate = self
chart.gestureDoubleTapResetsZoom = true
chart.frame = CGRectMake(0, 0,width,0.9 * height)

// Style crosshair (a style already exists on the crosshair that is pulled from the current theme being used by the chart)
chart.crosshair.style.lineColor = UIColor.whiteColor()
chart.crosshair.style.defaultBackgroundColor = UIColor.whiteColor()
chart.crosshair.style.defaultLabelBackgroundColor = UIColor.whiteColor()
于 2015-03-06T10:45:10.173 回答