CorePlotのサンプルを読みながらメモ。
- 最初の項目一覧は、RootViewControllerが表示している。
- ストーリーボードで遷移。prepareForSegueへ。
- DetailViewControllerのdetailItemにPlotItemをセットしている。
- DetailViewControllerのsetDetailItemにて、DetailViewControllerが持っている、hostingViewにチャートを描画している。
- チャートの描画処理自体は、detailItemが実装している。
で、PlotItemの方を見てみる。
- まずは、renderInView:withTheme:animated:から。
- ざっくりと、generateDataして、renderInGraphHostingView:withTheme:animated:して、formatAllGraphsしている。
- で、generateDataと、renderInGraphHostingView:withTheme:animated:は、それぞれのPlotItemのサブクラスで実装されている。
- つまり、そのときのdetailItemにセットされているクラスによって処理が異なるということ。(サブクラスのオーバーライドってやつです。)
- なので、例えばローソクチャートのサンプルのソースを見たいときは、CandlestickPlot.mをみるっす。
コメント