我正在使用
Charts
我有个问题我不太明白。
我创建了一个子类
PieChartView
重写函数
calcMinMax
从
柱状图
在我的自定义类中,允许我在其他地方创建数据的自定义饼图。
我已更改中的函数
柱状图
从
internal override func calcMinMax()
open override func calcMinMax()
,允许我在自定义类中使用
public override func calcMinMax()
:
open class PieChartView: PieRadarChartViewBase
{
...
open override func calcMinMax()
{
calcAngles()
}
}
public class CustomPieChartView: PieChartView
{
....
public override func calcMinMax()
{
calcAngles()
}
}
在演示应用程序中,我将图表的类型从
柱状图
CustomPieChartView
,以及在中适当更新类类型
PieChartViewController.xib
:
class PieChartViewController: DemoBaseViewController {
@IBOutlet var chartView: CustomPieChartView!
...
}
在Xcode 10.3中,当饼图即将显示时,
notifyDataSetChanged
在类内调用
PieRadarCharViewBase
calcMinMax公司
,并因此调用
calcMinMax公司
在我的自定义类中
自定义图表视图
.
这和预期的一样。
是的一个子类
PieRadarCharViewBase公司
.
这个
问题
更新任何代码都会破坏此功能,而不是调用
CustomPieChartView::calcMinMax
,调用父类
PieChartView::calcMinMax
,导致崩溃(与原始版本无关)。
错误地
我附加了包含问题的演示应用程序,以便更好地可视化和复制我的问题。
drawAngles[j] crash in PieChartRenderer using custom PieChartView in Xcode 11+
在运行我的演示应用程序之后,有人知道是什么导致了这种情况吗?
demo app