その移行手順。
本記事はDGChartsのインポートをCocoaPodsで実施する場合の手順を示す。
1. Podfileを修正する
修正前
pod 'Charts'
修正後
pod 'DGCharts'
2. Podfile.lockを削除する
3. CocoaPodsにより、ターゲットとなるプロジェクトにDGChartsをインストールする
コマンド
pod install
Chartsが削除され、DGChartsがインストールされる。
4.. ターゲットとなるプロジェクトをXcodeで開く
4.1 DGChartsを呼び出すObjective-cで記述されたクラスの修正
(1) ヘッダファイル(.h)の修正
修正前
#import <Charts/Charts-umbrella.h>
修正後
#import <DGCharts/DGCharts-umbrella.h>
(2) ロジックを記述したソースファイル(.m)の修正
古いバージョンのChartsからの移行の場合、APIやクラス名に多数の変更がある。
ビルド時にエラーとなるため、DGChartsのサンプルコードをダウンロードし、参照しながら修正を行う。
https://github.com/danielgindi/Charts
4.2 DGChartsを呼び出すSwiftファイルの修正
修正前
import Charts
修正後
import DGCharts
5. 実行時エラーの対応
(1) LineChart1ViewController実行時
エラーメッセージ
-[UIView setDelegate:]: unrecognized selector sent to instance
原因:ViewControllerが利用しているXibのLineChartのModule名がChartsになっている。
修正内容:ViewControllerが利用しているXibのLineChartのModule名をDGChartsに修正する。
・当該Xibのインスペクタを開き、Custom ClassのModuleをChartsからDGChartsに修正する。
※ LineChart1ViewController以外の実行時に同様なエラーでクラッシュした場合は、同様にXibを修正する。
ビルド時、実行時にエラーとなった場合は、GitHubのDGChartsページでIssuesから参考になるトピックを検索して解決の糸口を探ること。
参考記事:
https://appdev-room.com/swift-dgcharts
https://github.com/danielgindi/Charts/issues/5104
【Chartsの最新記事】