ViewController で [self setNeedsDisplay:YES] を実行しようとすると、認識されないセレクターがインスタンスに送信されてクラッシュします...何か間違っていますか?
私は使用しています:
-(void) drawRect: (CGRect)rect {
    ///code...
}
    -setNeedsDisplay: は NSView のメソッドであり、UIView には (ほとんど役に立たない) ブール値フラグがありません。setNeedsDisplay代わりに電話する必要があります。したがって、(View Controllerから)呼び出します:
[[self view] setNeedsDisplay];
パラメータがありません...
試す:
[self.view setNeedsDisplay:YES] 
setNeedsDisplay:UIView ベースのクラスにのみメッセージを送信できます。drawRectUIView ベースのクラスに対してのみ、: メッセージを効果的にオーバーライドできます。