DO NOT MERGE Use ArrayMap instead of HashMap for storing relavant nodes
This fix is to take advantage of ArrayMap, which is a key-value
mapping data structure that is more memory efficient than HashMap.
Bug: 11604254
Change-Id: I57006880de570a4d7f3899e274cf0a06355d116b
(cherry picked from commit d7444427d9)
This commit is contained in:
committed by
Filip Gruszczynski
parent
497176975f
commit
629ba0e2b3
@@ -16,9 +16,10 @@
|
||||
|
||||
package android.animation;
|
||||
|
||||
import android.util.ArrayMap;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
@@ -68,7 +69,7 @@ public final class AnimatorSet extends Animator {
|
||||
* to a single node representing that Animator, not create a new Node
|
||||
* if one already exists.
|
||||
*/
|
||||
private HashMap<Animator, Node> mNodeMap = new HashMap<Animator, Node>();
|
||||
private ArrayMap<Animator, Node> mNodeMap = new ArrayMap<Animator, Node>();
|
||||
|
||||
/**
|
||||
* Set of all nodes created for this AnimatorSet. This list is used upon
|
||||
@@ -646,7 +647,7 @@ public final class AnimatorSet extends Animator {
|
||||
anim.mTerminated = false;
|
||||
anim.mStarted = false;
|
||||
anim.mPlayingSet = new ArrayList<Animator>();
|
||||
anim.mNodeMap = new HashMap<Animator, Node>();
|
||||
anim.mNodeMap = new ArrayMap<Animator, Node>();
|
||||
anim.mNodes = new ArrayList<Node>(nodeCount);
|
||||
anim.mSortedNodes = new ArrayList<Node>(nodeCount);
|
||||
anim.mReversible = mReversible;
|
||||
|
||||
Reference in New Issue
Block a user