2010-07-19 2 views
3

하나의 Android 튜토리얼에서이 함수의 사용법을 보았습니다. 거기서 그는 내가 생각한 응용 프로그램의 이전 세션을 다시 시작하기 위해이 클래스를 사용하지만 문제는 클래스에서이 함수를 ovveride 할 수 없다는 것입니다. 두 클래스 (내 & his)는 ListActivity에서 확장됩니다. onFreeze()가 정확히 사용 된 이유는 무엇입니까?

@Override 
    protected void onFreeze(Bundle outState) { 
     super.onFreeze(outState); 
     outState.putLong("feed_id", feed.feedId); 
     outState.putString("title", feed.title); 
     outState.putString("url", feed.url.toString()); 
    } 

또한 나는 ArrayLists를 조작하는 그는 list.next() & 나는 그런 기능이없는 호출 그래서 나는() list.MoveToNext를 사용하는 것처럼, 그 전에 호출 기능의 일부에 약간의 문제가 있었다. 다른 버전의 Android (1.6 사용)와이 기능의 대체품으로 사용하기 때문에이 문제가 발생했을 수 있습니까?

답변

6

이 튜토리얼은 매우 오래된 것 같습니다. 사실 onFreeze() 메서드는 더 이상 사용되지 않습니다. the (August 2008) Android 0.9 SDK Beta release notes에서 :

onFreeze onSaveInstanceState (번들)로 이름이 변경 (번들), 더 나은 당신은, 그것은 바로 친구입니다있어

+0

ahaa 대답에 감사드립니다. 나는 안드로이드 SDK에 몇 가지 변경 사항이 있다고 생각합니다. – Kex

1

애플리케이션 라이프 사이클의 실제 변화를 대표하지 않는다는 사실을 반영

@Override 

onSaveInstanceState(Bundle outState) 

{ 

//TODO auto generated block 

super.onSaveInstanceState(outState); 

} 
관련 문제