示例#1
0
		private void saveManagedDialogs(android.os.Bundle outState)
		{
			if (mManagedDialogs == null)
			{
				return;
			}
			int numDialogs = mManagedDialogs.size();
			if (numDialogs == 0)
			{
				return;
			}
			android.os.Bundle dialogState = new android.os.Bundle();
			int[] ids = new int[mManagedDialogs.size()];
			{
				for (int i = 0; i < numDialogs; i++)
				{
					int key = mManagedDialogs.keyAt(i);
					ids[i] = key;
					android.app.Activity.ManagedDialog md = mManagedDialogs.valueAt(i);
					dialogState.putBundle(savedDialogKeyFor(key), md.mDialog.onSaveInstanceState());
					if (md.mArgs != null)
					{
						dialogState.putBundle(savedDialogArgsKeyFor(key), md.mArgs);
					}
				}
			}
			dialogState.putIntArray(SAVED_DIALOG_IDS_KEY, ids);
			outState.putBundle(SAVED_DIALOGS_TAG, dialogState);
		}
示例#2
0
		protected internal virtual void onSaveInstanceState(android.os.Bundle outState)
		{
			outState.putBundle(WINDOW_HIERARCHY_TAG, mWindow.saveHierarchyState());
			android.os.Parcelable p = mFragments.saveAllState();
			if (p != null)
			{
				outState.putParcelable(FRAGMENTS_TAG, p);
			}
			getApplication().dispatchActivitySaveInstanceState(this, outState);
		}