मैं जा रहा हूँ के माध्यम से इस codelab: https://developer.android.com/codelabs/android-lifecycles#6 यह बताता है कि कैसे का उपयोग करने के लिए SavedStateHandle में एक ViewModel करने के लिए जीवित रहने की प्रक्रिया मृत्यु है । निर्माता के ViewModel के रूप में नीचे है:
private SavedStateHandle mState;
public SavedStateViewModel(SavedStateHandle savedStateHandle) {
mState = savedStateHandle;
}
और viewmodel प्रारंभ किया है के रूप में गतिविधि में इस प्रकार है:
mSavedStateViewModel = new ViewModelProvider(this).get(SavedStateViewModel.class);
जब ViewModel के निर्माता कहा जाता है? और कैसे करता है Viewmodel प्राप्त savedStateHandle
पैरामीटर के ViewModel?
संपादित करें:
मैं पाया मेरे सवाल का जवाब के माध्यम से इस blogpost: https://www.rockandnull.com/viewmodel-savedstate/
यह कहना है कि अगरSavedStateHandle
केवल पैरामीटर में हमारे viewmodel के निर्माता के by viewModels
प्रतिनिधि प्रदान करता है यह करने के लिए viewmodel स्वचालित रूप से ।
हालांकि, अगर हम एक संयोजन के कस्टम पैरामीटर द्वारा ही प्रदान की जाती निर्भरता इंजेक्शन ढांचे(मूठ) ई । छ: भंडार, अन्य के एक जोड़े क्रम तर्कों ई.छ: चयनित श्रेणी आईडी और SavedStateHandle हमें मदद करने के लिए जीवित रहने की प्रक्रिया में मौत viewmodel के निर्माता - कैसे कर सकते हैं हम प्रदान करते हैं उन सभी मापदंडों कारखाने के लिए?
कृपया पोस्ट एक छोटे से उदाहरण के लिए, मेरी समझ