2012-08-01 3 views
-1

onDestroy()으로 연락하겠습니다. 가 호출되지 않습니다,onDestroy가 없습니다. 자동 완료가 도움이되지 않습니다.

@Override 
protected void onDestroy() 
{ 
    unbindDrawables(findViewById(R.id.rootView)); 
    super.onDestroy(); 
    System.gc(); 
} 

을하지만, 다음은
내가 넣어 것입니다. 사실, 자동 완성을 사용하면 onDestroy가 나타나지 않습니다 ... 하지만 onPause, onCreate, onStop .... 예

그래서 여기에 뭔가가 있습니까? 나는 결국 바보가 될지도 모릅니다 ...

+0

더 많은 코드를 게시 할 수 있습니까? – jaisonDavis

+0

다른 것과 마찬가지로 onDestroy를 재정의하고 싶습니다. 하지만 난 할 수 없어 ... public class rvListePois extends LocationListener, OnClickListener' – azerto00

+0

ondestroy()는 모든 함수 밖에 있고 클래스 내부에 있어야합니다. – jaisonDavis

답변

3

finish()으로 전화해야합니다.

onDestroy가 자동으로 호출됩니다.하지만 호출에 의존해서는 안됩니다.

들의 OnDestroy() :

가 활동하기 전에 당신이받는 마지막 호출이 파괴된다. 이것은 작업이 완료되면 (finish()를 호출 한 사용자 또는 공간을 절약하기 위해 시스템이 일시적으로이 활동 인스턴스를 파괴하기 때문에 발생할 수 있습니다.)이 두 시나리오를 isFinishing() 메소드로 구별 할 수 있습니다.

+0

finish()를 호출하고 싶지 않습니다. 응용 프로그램이 끝나기 전에 몇 가지 기능을 호출하여 정리해야합니다. (그리고 나는 언제 그것이 될지 모른다); 그래서 onDestroy가 도와 주어야합니다 .. – azerto00

+0

네, onDestroy(), onStop()에서 물건을 청소할 수 있지만이 메서드는 수동으로 호출 할 수 없습니다.시스템은 시간이 될 때마다 호출합니다. –

+0

필자는 Eclipse를 사용하여 자동 완성 기능을 사용하여 onDestroy를 표시하지 않는 이유를 묻습니다 (시스템을 안드로이드로 독립적으로 호출하거나 onDestroy를 호출하지 않는지). 나는 질문을하기 시작했다. 예. 나는 onBackPresses() 또는 onPause()와 같은 장소에 놓았다. – azerto00

0
호출되지 수 있습니다

들의 OnDestroy

참고 :! 활동이, 콘텐츠 제공 업체에 편집 내용을 데이터를 편집하는 경우, 예를 들어 데이터를 저장하기위한 장소로 호출되는이 방법에 포함되지 않습니다 onPause() 또는 onSaveInstanceState (Bundle) 중 하나에서 커밋해야하며이 메서드는 일반적으로 수행되지 않습니다. 과 연결된 스레드와 같은 리소스를 해제하기 위해 이 구현되었으므로 파괴 된 작업은 응용 프로그램의 나머지 부분이 계속 실행되는 동안 주위에 등을 남기지 않습니다. 이 시스템이 단순히에서이 방법 (또는 다른 사람)를 호출하지 않고 활동의 호스팅 프로세스를 종료합니다 상황, 그래서 프로세스가 진행 후 는 주위를 유지하기위한 것입니다 일을 사용할 수 없습니다 떨어져.

파생 클래스는이 메소드의 수퍼 클래스 구현 을 호출해야합니다. 그렇지 않은 경우 예외가 발생합니다.

+0

나는 juste가 쓴 코멘트에 대해 말했듯이. Eclipse가 onPause() onStop()과 같은 자동 완료 기능을 사용하여 onDestroy를 나에게 프롬프트하지 않는 이유는 무엇입니까? – azerto00

0

여러분 모두 도와 주셔서 감사합니다. 이제는 onDestroy를 호출 할 수 없다는 것을 이해했습니다.

왜 그런지 모르겠지만 이제는 Eclipse에서 onDestroy 메소드를 사용합니다. 그래서 나는 불려지지만, 어디로 가고 싶지 않습니다.