(DialogFragment)와 (Person) 이름과 성을 가진 하나의 Person을 편집하기위한 간단한 DialogFragment를 만드는 방법과 각각의 enum (직장, 집 등) 및 주소.안드로이드 DialogFragment와 설정 변경
우선 Person 객체를 DialogFragment에 제대로 전달하려면 어떻게해야합니까? 내 현재 솔루션에는 DialogFragment가 작성된 후 dialog.show() 전에 호출되는 setPerson (Person person) 메소드가 있습니다. 이 작업은 구성 변경이 발생할 때까지 (사용자가 화면을 회전시킬 때까지) 잘됩니다. DialogFragment가 다시 만들어지고 Person 객체에 대한 참조가 null입니다. 나는 onSaveInstanceState를 사용하여 인스턴스를 저장할 수 있지만 객체가 복잡하고 값 비싸며 큰 객체를이 방법으로 지속하면 낭비되는 것처럼 보입니다.
또한 대화 상자를 사용하는 활동에서 구성 변경을 사용하지 않도록 설정했지만 문제가 해결되었지만 대화 상자를 다시 사용할 수있게하고 구성 변경을 사용하지 않도록 설정하는 데 필요한 모든 작업이 필요하지 않게되었습니다.
세 번째 옵션은 Person에 대한 참조를 정적 변수에 저장하는 것이지만 다시 대화 상자를 사용하여 여러 인스턴스를 지원할 수있게하려는 것입니다.
재사용 가능한 대화 상자에서 값 비싸고 복잡한 객체를 다른 사람들이 어떻게 처리합니까?