की विस्तारित/ध्वस्त स्थिति को सहेजें और पुनर्स्थापित करें मेरे पास एक विस्तारणीय लिस्टएक्टिविटी है (एक SimpleCursorTreeAdapter का उपयोग करके) जो उपयोगकर्ता द्वारा बच्चे-तत्व पर क्लिक करते समय एक और गतिविधि शुरू करता है। नई गतिविधि में बैक-बटन दबाते समय सभी सूची-आइटम फिर से ध्वस्त हो जाते हैं। मैं ExpandableListActivity की विस्तारित स्थिति को कैसे सहेजूं और इसे दोबारा बहाल करूं।एक विस्तारणीय लिस्टएक्टिविटी
मैं पहले से ही लागू किया onSaveInstanceState() और onRestoreInstanceState() इस तरह की कोशिश की ...
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
Parcelable listState = getExpandableListView().onSaveInstanceState();
outState.putParcelable("ListState", listState);
}
@Override
protected void onRestoreInstanceState(Bundle state) {
super.onRestoreInstanceState(state);
Parcelable listState = state.getParcelable("ListState");
getExpandableListView().onRestoreInstanceState(listState);
}
... लेकिन onRestoreInstanceState() कभी नहीं कहा जाता हो जाता है। मैं भी विधि OnCreate() में राज्य को बहाल करने की कोशिश की, लेकिन यह रूप में अच्छी तरह नहीं बुलाया जाता है:
if (savedInstanceState != null) {
Parcelable listState = savedInstanceState.getParcelable("ListState");
getExpandableListView().onRestoreInstanceState(listState);
}
मैं इसी तरह यहाँ http://stackoverflow.com/questions/10611927/simplecursortreeadapter-and-cursorloader – toobsco42
@ toobsco42 मैं नहीं दिख रहा है कि यह कैसे से संबंधित है कुछ कर रहा हूँ काम करना चाहिए प्रश्न – Tom
पिछली गतिविधि पर लौटने पर एडाप्टर को फिर से सेट करने से सावधान रहें। एडाप्टर नया सेट अप सूची को पतन कर देगा। – jayeffkay