これを実行すると、エラーなしにアプリケーションがクラッシュする。私はクラス内のメソッドを呼び出す場合、それは動作します。クラス外から呼び出すとクラッシュする
footballScores = [[FootBallScores alloc] init];
[footballScores initStuff];
私はこれをビューコントローラのviewDidLoadから呼び出します。
しかし、私は
footballScores = [[FootBallScores alloc] init];
//[footballScores initStuff];
をコメントアウトおよび方法は、それがすべて完璧に動作クラスFootballScores内のinitメソッドにinitStuffを呼んで移動した場合。
だから、私のアプリがクラッシュする原因となっているクラス外のinitStuffという何らかの理由が考えられます。
なぜこのことが起こるのか教えてもらえますか?
多くのおかげで、 コード
-(void) init
{
//[self initStuff];
}
- (void)initStuff // Was - (void)awakeFromNib
{
NSLog(@" init called");
appDelegate = (FootballRadioAppDelegate *)[[UIApplication sharedApplication]
delegate];
responseData = [[NSMutableData data] retain];
baseURL = [[NSURL
URLWithString:@"http://footballmatchcentre.timesonlinesport.co.uk/ifb2009/league.asp?
league=EPL"] retain];
NSURLRequest *request = [NSURLRequest requestWithURL:baseURL];
[[[NSURLConnection alloc] initWithRequest:request delegate:self] autorelease];
}
を編集INITの本体は、クラスの外からの呼び出しをテストするためにコメントアウト取得し、私はそれは内から呼び出さ取得することにより動作するかどうかをテストするためにそれをアンコメントクラス。
'init'と' initStuff'メソッドの本体を見せてください。 – Richard
-initと-initStuffの実装を見ずには分かりません。エラーを再現するテストケースを最小限に抑えることができれば、正確な回答を得ることができます。 –
OK両方のメソッドからコードを追加しました。かなり基本的なコード。 –