UICollectionViewCell内的核心图

问题描述 投票:0回答:1

我有一个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'

ios swift uicollectionview core-plot
1个回答
1
投票

你需要将类名CPTGraphHostingView设置为corePlot

@IBOutlet weak var corePlot: CPTGraphHostingView!

在IB的单元格的xib文件/原型内,这里UIView崩溃

[UIView setHostedGraph:]

意味着你没有分配它

© www.soinside.com 2019 - 2024. All rights reserved.