我有一个UICollectionView
,其中一个单元格内有一个核心图。
在UIView
中制作Core-Plot图时我没有任何问题,但是我很难让这个Core-Plot图在UICollectionViewCell
中工作。
在MyCollectionViewCell.swift中
import UIKit
import CorePlot
class MyCollectionViewCell: UICollectionViewCell {
@IBOutlet weak var corePlot: CPTGraphHostingView!
}
在MyViewController.swift中
import UIKit
import CorePlot
class MyViewController: UIViewController,UICollectionViewDelegate,UICollectionViewDataSource,UICollectionViewDelegateFlowLayout {
...
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let theCell = collectionView.dequeueReusableCell(withReuseIdentifier: "MyCollectionViewCell", for: indexPath) as! MyCollectionViewCell
let graph = CPTXYGraph(frame: theCell.corePlot.bounds)
theCell.corePlot.hostedGraph = graph // This is where it crashes
...
}
...
}
extension MyViewController: CPTScatterPlotDataSource, CPTScatterPlotDelegate {
...
}
- [UIView setHostedGraph:]:无法识别的选择器发送到实例0x7f8a9aa20240
***由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:' - [UIView setHostedGraph:]:无法识别的选择器发送到实例0x7f8a9aa20240'
你需要将类名CPTGraphHostingView
设置为corePlot
@IBOutlet weak var corePlot: CPTGraphHostingView!
在IB的单元格的xib文件/原型内,这里UIView
崩溃
[UIView setHostedGraph:]
意味着你没有分配它