Android Open Source - memory_hog_android Bundled Saved State

From Project

Back to project page memory_hog_android.


The source code is released under:

Apache License

If you think the Android project memory_hog_android listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*/*  ww w  .  j  a  v a  2  s .c om*/
    Generic class for easier implementation of save/restore instance state
    in a custom View subclass. This class holds all the state as items in
    a Bundle.

    Copyright 2012 by Lawrence D'Oliveiro <>.

    Licensed under the Apache License, Version 2.0 (the "License"); you may not
    use this file except in compliance with the License. You may obtain a copy of
    the License at

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
    License for the specific language governing permissions and limitations under
    the License.

import android.os.Parcelable;
import android.os.Parcel;
import android.os.Bundle;
import android.view.AbsSavedState;

public class BundledSavedState extends AbsSavedState
  /* Create and return one of these in the onSaveInstanceState method in your custom View.
    Sample call sequence:
        final android.os.Bundle MyState = new android.os.Bundle();
        MyState.putxxx("MyName", MyValue);
        ... insert any other custom fields into the Bundle ...
            new BundledSavedState(super.onSaveInstanceState(), MyState);

    Then, your onRestoreInstanceState method can cast its argument to an
    instance of this class, and process the saved fields appropriately, e.g.:
        final android.os.Bundle MyState = ((BundledSavedState)SavedState).MyState;
        MyValue = MyState.getxxx("MyName", MyDefault);
        ... retrieve any other custom fields ...

    public static final Parcelable.Creator<BundledSavedState> CREATOR =
        new Parcelable.Creator<BundledSavedState>()
            public BundledSavedState createFromParcel
                Parcel SavedState
                final AbsSavedState SuperState =
                final Bundle MyState = SavedState.readBundle();
                    new BundledSavedState(SuperState, MyState);
              } /*createFromParcel*/

            public BundledSavedState[] newArray
                int NrElts
                    new BundledSavedState[NrElts];
              } /*newArray*/
          } /*Parcelable.Creator*/;

        public final Parcelable SuperState; /* pass to super.onRestoreInstanceState() */
        public final Bundle MyState; /* all your custom state information saved here */

        public BundledSavedState
            Parcelable SuperState, /* result from super.onSaveInstanceState() */
            Bundle MyState /* put all your custom state information here */
            this.SuperState = SuperState;
            this.MyState = MyState;
          } /*BundledSavedState*/

        public void writeToParcel
            Parcel SavedState,
            int Flags
            super.writeToParcel(SavedState, Flags);
          } /*writeToParcel*/

  } /*BundledSavedState*/

Java Source Code List