私は iPhone プログラミングの完全な初心者であり、頭を包むことができないという例外がスローされることに遭遇しました。
背景: エラーはカスタム サブビューで発生しており、プログラムをロードするとすぐに発生します。オーバーライドされた drawRect メソッドで例外がスローされます。エラーをスローするコードは次のとおりです。
- (void)drawRect:(CGRect)rect{
NSNumber *points = [NSNumber numberWithInt: star.numberOfPoints];
//HERE. Doesn't recognize selector?!
CGPathRef t = (CGPathRef)[starPaths objectForKey:points];
/*snip*/
starPaths は、容量 1 の NSMutableDictionary として awakeFromNib で初期化されます。
スローされる例外は -[NSObject doesNotRecognizeSelector:] です
starPaths は、ビューのヘッダー ファイルで次のように宣言されています。
NSMutableDictionary *starPaths;
として初期化されます
- (void)awakeFromNib{
starPaths = [NSMutableDictionary dictionaryWithCapacity: 1];
}
最後に、エントリを追加するコードは、辞書からの nil 応答の受信に依存して、その特定のエントリが構築されます。
助言がありますか?他に提供すべき情報はありますか?明らかな何かが欠けているように感じますが、運が悪くて一日中これに頭を悩ませてきました。