1

このデリゲートメソッドを介して、あるクラスから別のクラスにデリゲートを使用して、connectionDidFinishLoadingにある_resultArrayオブジェクトを渡します。deallocでリリースしていますが、問題がないかどうかはわかりません。この_resultArrayをリリースする方法。

これが私のコードです。

-(void)connectionDidFinishLoading:(NSURLConnection *)connection{
    NSString *urlDataString = [[NSString alloc]initWithData:receiveData 
        encoding:NSUTF8StringEncoding];
    NSMutableDictionary *soapDictionary = nil;
    soapDictionary = [parser objectWithString:urlDataString error:&error];
    resultArray = [soapDictionary copy];
    [urlDataString release];
    [self soapResultSurvey:resultArray];
}

//Delegate Method
-(void)soapResultSurvey:(id)_resultSurvey{
    [delegate soapResultSurvey:_resultSurvey];
}
4

1 に答える 1

0
resultArray = [[soapDictionary copy] autorelease];

次に、resultArrayはスレッドの最後で割り当てが解除されるため、デリゲートがそれを保持する必要がある場合は、デリゲートのsoapResultSurvey:メソッドでそれを実行してください。

于 2012-10-24T07:44:34.143 に答える