다음을 통해 공유


Xamarin.Android ListView 및 활동 수명 주기

활동은 애플리케이션이 실행될 때 시작, 실행, 일시 중지 및 중지와 같은 특정 상태를 거행합니다. 자세한 내용 및 상태 전환 처리에 대한 구체적인 지침은 활동 수명 주기 자습서를 참조하세요. 활동 수명 주기를 이해하고 코드를 올바른 위치에 배치 ListView 하는 것이 중요합니다.

이 문서의 모든 예제는 작업의 OnCreate 메서드에서 '설정 작업'을 수행하고(필요한 경우) 에서 '눈물' OnDestroy을 수행합니다. 이 예제에서는 일반적으로 변경되지 않는 작은 데이터 집합을 사용하므로 데이터를 더 자주 다시 로드할 필요가 없습니다.

그러나 데이터가 자주 변경되거나 많은 메모리를 사용하는 경우 다른 수명 주기 메서드를 사용하여 데이터를 채우고 새로 고치는 것이 적절할 수 있습니다 ListView. 예를 들어 기본 데이터가 지속적으로 변경되거나 다른 활동에 대한 업데이트의 영향을 받을 수 있는 경우 어댑터를 OnStart 만들거나 OnResume 활동이 표시될 때마다 최신 데이터가 표시되도록 합니다.

어댑터에서 메모리 또는 관리되는 커서와 같은 리소스를 사용하는 경우 보조 메서드에서 해당 리소스를 인스턴스화된 위치로 해제해야 합니다(예: 생성된 OnStart 개체는 삭제 OnStop할 수 있습니다).

구성 변경

구성 변경(특히 화면 회전 및 키보드 표시 유형)은 특성을 사용하여 ConfigurationChanges 달리 지정하지 않는 한 현재 활동이 제거되고 다시 생성될 수 있음을 기억해야 합니다. 즉, 정상적인 조건에서 디바이스를 회전하면 다시 ListViewAdapter 생성되고(코드를 OnPause 작성하지 않은 경우) 스크롤 위치 및 OnResume행 선택 상태가 손실됩니다.

다음 특성은 구성 변경으로 인해 활동이 제거되고 다시 생성되지 않도록 합니다.

[Activity(ConfigurationChanges="keyboardHidden|orientation")]

그런 다음 해당 변경 내용에 적절하게 응답하도록 활동을 재정 OnConfigurationChanged 의해야 합니다. 구성 변경 내용을 처리하는 방법에 대한 자세한 내용은 설명서를 참조하세요.