2012-08-09 2 views
0

나는 Activity을 확장하는 Chat이라는 클래스가 있습니다.android java 상속

Chat 클래스를 만들 때 Application 클래스에 대한 참조를 저장합니다.

onCreate(Bundle) { 
    setCurrentActivity(this); 
} 

해당 방법 중 하나를 사용하려면 활동의 채팅 영역에 들어가고 싶습니다.

Chat chat = (Chat) getCurrentActivity(); 
chat.someUniqueFuction(); 

을하지만 난 어떤 Chat 방법을 볼 수 없습니다 : 나는이처럼 할 노력하고있어. 왜?

+0

이러한 함수는 공개되어 있습니까? – eleven

+0

나는 꽤 이해하지 못한다. 그러나 나는 왜 당신이 수업 시간에 수업에 대한 참조를 저장할 필요가 없는지 안다? "this"라는 키워드가 있습니다. chat.someUniqueFunction()이 (가) 어디에서 호출 되었습니까? –

+3

실제로 필요하지 않은 경우에도 활동 참조를 저장하는 것은 좋지 않습니다. 메모리 누수가 발생할 수 있습니다. – waqaslam

답변

0

응용 프로그램 클래스에서는이

public void onCreate(){ 
    super.onCreate(); 
    setCurrentActivity(this); 
} 

과 같아야합니다 그리고 당신은 currentActivity으로 어떤 활동입니다 응용 프로그램을 설정 때문에 이것은 바란 영향을 미치지 않을 것이다.

0
onCreate(Bundle saveInstance){ 
    super.onCreate(); 
    Chat chat = new Chat(); 
    chat.someUniqueFuction(); 
}