• After 15+ years, we've made a big change: Android Forums is now Early Bird Club. Learn more here.

Apps Saving values from a (Float) ArrayList into a Bundle

droidzip

Lurker
I'm writing a game using Surfaceview and have a question relating to saving Data into a Bundle.

Initially, I had an arraylist which stored the Y co-ordinates (in the form of Integers) of sprites that will move only up and down. Declared as:

static ArrayList<Integer> ycoordinates = new ArrayList<Integer>();
I saved them to a Bundle using the following:

myBundle.putIntegerArrayList("myycoordinates", ycoordinates);
And restored them using this:

ycoordinates.addAll(savedState.getIntegerArrayList("ycoordinates"));
This all worked perfectly. However, I've had to change the whole coordinates system so it's based on Delta time to allow my sprites to move at a uniform speed across different screens. This is, again, working perfectly.

However, as a result of this change, I now have to store these values as floats rather than integers.

So, I am declaring as:

static ArrayList<Float> ycoordinates = new ArrayList<Float>();
So that's the background, now my question is, how do I store and restore values from a Float Arraylist? There doesn't seem to be a "putFloatArrayList" or "getFloatArrayList".

(I've used an Arraylist rather than an Array as the number of sprites needs to be dynamic).

Any help would be appreciated.

Many thanks
 
You can either convert the list to an array, put it in the bundle using putFloatArray and than after getting it convert it back to a list. Or you can use putSerializable and getSerializable.
 
Back
Top Bottom