グラフ機能を備えた電卓を構築しようとしており、MVC デザインを使用しています。
したがって、基本的に2つのMVCがあります
CalculatorViewControllerおよびそのビューとモデルGraphViewControllerおよびそのビューとモデル
電卓部分のビューに を使用NavigationControllerして設定しています。このビューに数式を入力してボタンを押すと、セグエがプログラムをビューのグラフ部分に移動します。rootViewGraph
しかし、グラフ ビューは、プロットするポイントを知る必要があります。これは、 を のプロパティとして設定することGraphViewControllerでdataSource処理されます。これにより、 は のプロトコルで定義されたメソッドを呼び出して、描画するポイントの配列を取得できます。GraphViewGraphViewdataSource
したがって、現在の問題は、そのプロトコルメソッドを呼び出してポイントの配列を取得しようとするとdataSource、ビュー内の my が常にnull.
nullビューがまだ画面に表示されていて生きている間、ビュー自体のコントローラーがどのようになるのかよくわからないので、これは私をかなり困惑させます。
dataSourceグラフコントローラーでセットアップするために使用しているコードは次のとおりです。
// code in GraphViewController.m
@synthesize graphView = _graphView;
- (void)setGraphView:(GraphView *)graphView {
_graphView = graphView;
self.graphView.dataSource = self;
}
dataSourceビューは、次のようにそのプロパティも合成しました。
// code in GraphView.m
@synthesize dataSource = _dataSource;