devlog of ShinJe Kim

[TIL] 2019-09-25

|

Today I Learned

  • 안드로이드에서 fragment를 생성할 때에는 newInstance()를 사용하여 생성해야 한다. 아래는 안드로이드 공식문서에서 발췌한 부분이다.

    Fragment의 모든 자식클래스는 인자가 없는 생성자(no-argument constructor)를 가지고 있어야 한다. 안드로이드 프레임워크는 필요할 때, 특히 상태 복원 중에(during state restore) fragment를 재인스턴스화(re-instantiate)하는데 이 때 인스턴스를 생성하기 위해 인자가 없는 생성자가 필요하다. 만약 인자가 없는 생성자를 사용할 수 없다면 상태 복원 중에 런타임 에러가 발생한다.

Comments