そのため、既存のウィンドウ内にカスタム ビューを描画する際に問題が発生しています。GraphView
ビューに値のグラフを描画するために使用するカスタム クラスがあります。グラフは毎秒渡された変数を取得し、 を介して再描画する必要がありますsetNeedsDisplay:YES
。この同じクラスをスタンドアロンの xCode プロジェクトで機能させることはできますが、これを機能させるには、Interface Builder のカスタム ビューから にコントロールを押しながらドラッグする必要がFile's Owner
あり、ビューが再描画されます。すべての描画コードはスタンドアロンの xCode プロジェクトで正しく機能するので、自分のdrawRect
メソッドを理解でき、他のすべてのビュー メソッドは意図したとおりに機能します。GraphView
同じことを行うと、現在のプロジェクトでこれを機能させることもできますが、applicationDidFinishLaunching
実行されません。
サンプル プロジェクトのコードの内訳を次に示します。
@implementation AppDelegate
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
// This code does not run when I drag the custom view's referencing outlet to File's Owner in IB
self.graph = [[GraphView alloc]init];
}
- (void)applicationWillTerminate:(NSNotification *)aNotification {
// Insert code here to tear down your application
}
-(IBAction)firstPoint:(id)sender{
[self.graph addNewPoint:[self.textValue floatValue]];
[self.graph setNeedsDisplay:YES];
}
@end
で更新するビューを取得するために、GraphView
からInterfaceBuilder に接続する必要がないように、欠けている部分は何ですか。どんな助けや指示もいただければ幸いです。File's Owner
[self.graph setNeedsDisplay:YES]