두 가지 주제를 사용하는 Android 애플리케이션이 있습니다. 테마 변경시 다시 작성해야 할 모든 활동과 단편을 다시 만들어야합니다.내 활동을 강제로 onSavedInstance 상태로 전화
저장된 응용 프로그램 상태를 사용하여 응용 프로그램을 다시 만드는 것과 같은 방법입니다.
내 활동이 저장된 인스턴스 상태를 강제로 호출 할 수있는 방법이 있습니까? 내가 그것을 어떻게 할 수 있다면 가능합니까? 이유가 없다면? 이것을 달성하기위한 대안이 있습니까?
현재 코드는 다음과 같습니다.
public static final void restartActivity(final FragmentActivity activity){
activity.finish();
activity.startActivity(new Intent(activity, activity.getClass()));
}
문제는 조각 백 스택이 다시 만들어지지 않는다는 것입니다. 어떤 도움이라도 대단히 감사하겠습니다.
'onRestoreInstanceState()'를보십시오 – jhobbie
onSavedInstance 상태가 활동을 닫을 때 해고되지 않습니다. 따라서 onRestoreInstanceState가 호출되지 않으며 실행 된 경우 저장된 인스턴스 상태가 null입니다. – CodeDecode
활동을 재 작성해야하는 이유가 확실하지 않지만 인 텐트 엑스트라의 데이터를 새로운 활동 인스턴스로 전달하고 상태를 "복원"하는 데 사용할 수 있습니다. –