2011-04-27 1 views
0

ASIFormDataRequest 클래스를 사용하여 서버에서 iphone 클라이언트로 데이터를 보내고받습니다. 나는 문제가있다. 예를 들어, 현재 뷰가 View Controller 인 경우 ASIFormDataRequest를 사용하는 View Controller가 있고 ASIFormDataRequest 대리자의 requestFinished 메소드가 성공적으로 호출되었습니다. 그러나 경우에 따라 View Controller의 이전 뷰로 다시 이동합니다. 즉 View Controller 릴리스를 의미하고 View Controller 클래스의 ASIFormDataRequest 객체도 해제됩니다. 그러나 요청은 여전히 ​​호출되었습니다. 나는 디버그하고 View Controller가 좀비 오브젝트가되었다는 것을 알았지 만, requestFinished 메소드가 심지어 오브젝트 릴리스라고 불리는 이유를 모르겠습니다. 나는 또한 대리인으로이 클래스를 사용하여, 나는 생각ASIFormDataRequest : 대리자 객체 릴리스시 대리자 메서드 호출

- (void) dealloc { 
    asiFormDataRequest.delegate = nil; 
    [super dealloc]; 
} 

답변

1

이 더 나은이의 ViewController 클래스에없는 요청을 사용하지만, 몇 가지 독립적 인 클래스를 만들고, 거기 당신 ASIRequests에서 사용의 ViewController의 할당 해제의 방법에 설정

btw, 비슷한 상황에서 나를 도울 수 있습니다.

+0

이해하기 쉽게 설명하는 코드입니다. 사실 나는 그것을 다른 클래스에서 구현하지만 여전히 동일한 문제가 있습니다. 당신의 대답에 감사드립니다. – haisergeant