我有以下代码,但我遇到了一些问题,可能与'open'关键字有关。
class CustomPieChartView: PieChartView
{
internal override func initialize()
{
super.initialize()
renderer = PieChartRenderer(chart: self, animator: _animator, viewPortHandler: _viewPortHandler)
_xAxis = nil
self.highlighter = PieHighlighter(chart: self)
}
}
答案 0 :(得分:1)
initialize
在internal
PieChartView
根据Swift documentation,您无法访问internal
个框架成员(必须将其标记为open
)。
内部访问 可以在任何源文件中使用实体 来自他们的定义模块,但不在其他任何源文件中 模块。您通常在定义应用程序或a时使用内部访问权限 框架的内部结构。
...
打开 类成员可以被模块中的子类覆盖 它们的定义位置,以及导入模块的任何模块 他们被定义的地方。
Charts的维护者可能不希望覆盖该方法,但由于它是开源的,如果有充分的理由或用例,您/某人可能会尝试更改该方法。