2009-04-11 6 views
1

iPhone에서 공유 액셀러레이터 인스턴스를 어떻게 릴리스합니까?

나는 가속도계 변수를 만들었습니다 :

UIAccelerometer *objAccelerometer; 
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 가속도계 변수를 만들었습니다.이 뷰를 해제하면 (다른보기를로드하기 위해) 가속도계 인스턴스가 프로그램을 실행합니다 죽다. (주석을 달았다면 문제없이 뷰를 전환 할 수 있습니다.)

NSTimer와 비슷한 문제가 있었지만 일단 호출했습니다.

[myTimer invalidate]; 

(이전에는보기를 해제하고 전환 함) 모든 것이 정상적으로 작동했습니다.

대리인을 적절하게 릴리스하거나 가속도계를 할당 해제하거나 해제해야하는 방법은 무엇입니까?

답변

6

공유 가속도계는 공개하지 않습니다. 단 한 번도 사용하지 않아야합니다.

가속도계에는 개체에 대한 참조가 있습니다. 그것을 공개하기 위해서는 그냥 delegate 속성을 nil로 설정하십시오 (객체에 대한 참조를 릴리스하는 속성이기 때문에).

+0

그랬습니다! 나는 (릴리스 또는 무효화와 같은) 기능이있을 것이라고 생각했지만, 완벽하게 작동하지는 않았습니다! –

+0

문제 없습니다. Objective C 2.0의 속성 구문을 읽고 여기서 무슨 일이 일어나고 있는지 확인하십시오. – philsquared

관련 문제