Merge "Remove obsolete DoubleEvaluator" into honeycomb
This commit is contained in:
36
api/11.xml
36
api/11.xml
@@ -20082,42 +20082,6 @@
|
||||
</parameter>
|
||||
</method>
|
||||
</class>
|
||||
<class name="DoubleEvaluator"
|
||||
extends="java.lang.Object"
|
||||
abstract="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
<implements name="android.animation.TypeEvaluator">
|
||||
</implements>
|
||||
<constructor name="DoubleEvaluator"
|
||||
type="android.animation.DoubleEvaluator"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</constructor>
|
||||
<method name="evaluate"
|
||||
return="java.lang.Object"
|
||||
abstract="false"
|
||||
native="false"
|
||||
synchronized="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
<parameter name="fraction" type="float">
|
||||
</parameter>
|
||||
<parameter name="startValue" type="java.lang.Object">
|
||||
</parameter>
|
||||
<parameter name="endValue" type="java.lang.Object">
|
||||
</parameter>
|
||||
</method>
|
||||
</class>
|
||||
<class name="FloatEvaluator"
|
||||
extends="java.lang.Object"
|
||||
abstract="false"
|
||||
|
||||
@@ -20115,42 +20115,6 @@
|
||||
</parameter>
|
||||
</method>
|
||||
</class>
|
||||
<class name="DoubleEvaluator"
|
||||
extends="java.lang.Object"
|
||||
abstract="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
<implements name="android.animation.TypeEvaluator">
|
||||
</implements>
|
||||
<constructor name="DoubleEvaluator"
|
||||
type="android.animation.DoubleEvaluator"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
</constructor>
|
||||
<method name="evaluate"
|
||||
return="java.lang.Object"
|
||||
abstract="false"
|
||||
native="false"
|
||||
synchronized="false"
|
||||
static="false"
|
||||
final="false"
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
<parameter name="fraction" type="float">
|
||||
</parameter>
|
||||
<parameter name="startValue" type="java.lang.Object">
|
||||
</parameter>
|
||||
<parameter name="endValue" type="java.lang.Object">
|
||||
</parameter>
|
||||
</method>
|
||||
</class>
|
||||
<class name="FloatEvaluator"
|
||||
extends="java.lang.Object"
|
||||
abstract="false"
|
||||
@@ -260264,7 +260228,7 @@
|
||||
deprecated="not deprecated"
|
||||
visibility="public"
|
||||
>
|
||||
<parameter name="arg0" type="T">
|
||||
<parameter name="t" type="T">
|
||||
</parameter>
|
||||
</method>
|
||||
</interface>
|
||||
|
||||
@@ -1,42 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2010 The Android Open Source Project
|
||||
*
|
||||
* 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
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
package android.animation;
|
||||
|
||||
/**
|
||||
* This evaluator can be used to perform type interpolation between <code>double</code> values.
|
||||
*/
|
||||
public class DoubleEvaluator implements TypeEvaluator {
|
||||
/**
|
||||
* This function returns the result of linearly interpolating the start and end values, with
|
||||
* <code>fraction</code> representing the proportion between the start and end values. The
|
||||
* calculation is a simple parametric calculation: <code>result = x0 + t * (v1 - v0)</code>,
|
||||
* where <code>x0</code> is <code>startValue</code>, <code>x1</code> is <code>endValue</code>,
|
||||
* and <code>t</code> is <code>fraction</code>.
|
||||
*
|
||||
* @param fraction The fraction from the starting to the ending values
|
||||
* @param startValue The start value; should be of type <code>double</code> or
|
||||
* <code>Double</code>
|
||||
* @param endValue The end value; should be of type <code>double</code> or
|
||||
* <code>Double</code>
|
||||
* @return A linear interpolation between the start and end values, given the
|
||||
* <code>fraction</code> parameter.
|
||||
*/
|
||||
public Object evaluate(float fraction, Object startValue, Object endValue) {
|
||||
double startDouble = ((Number) startValue).doubleValue();
|
||||
return startDouble + fraction * (((Number) endValue).doubleValue() - startDouble);
|
||||
}
|
||||
}
|
||||
@@ -25,8 +25,8 @@ import java.util.ArrayList;
|
||||
* values between those keyframes for a given animation. The class internal to the animation
|
||||
* package because it is an implementation detail of how Keyframes are stored and used.
|
||||
*
|
||||
* <p>This type-specific subclass of KeyframeSet, along with the other type-specific subclasses for
|
||||
* int, long, and double, exists to speed up the getValue() method when there is no custom
|
||||
* <p>This type-specific subclass of KeyframeSet, along with the other type-specific subclass for
|
||||
* int, exists to speed up the getValue() method when there is no custom
|
||||
* TypeEvaluator set for the animation, so that values can be calculated without autoboxing to the
|
||||
* Object equivalents of these primitive types.</p>
|
||||
*/
|
||||
|
||||
@@ -25,8 +25,8 @@ import java.util.ArrayList;
|
||||
* values between those keyframes for a given animation. The class internal to the animation
|
||||
* package because it is an implementation detail of how Keyframes are stored and used.
|
||||
*
|
||||
* <p>This type-specific subclass of KeyframeSet, along with the other type-specific subclasses for
|
||||
* float, long, and double, exists to speed up the getValue() method when there is no custom
|
||||
* <p>This type-specific subclass of KeyframeSet, along with the other type-specific subclass for
|
||||
* float, exists to speed up the getValue() method when there is no custom
|
||||
* TypeEvaluator set for the animation, so that values can be calculated without autoboxing to the
|
||||
* Object equivalents of these primitive types.</p>
|
||||
*/
|
||||
|
||||
@@ -67,10 +67,9 @@ public class PropertyValuesHolder implements Cloneable {
|
||||
KeyframeSet mKeyframeSet = null;
|
||||
|
||||
|
||||
// type evaluators for the three primitive types handled by this implementation
|
||||
// type evaluators for the primitive types handled by this implementation
|
||||
private static final TypeEvaluator sIntEvaluator = new IntEvaluator();
|
||||
private static final TypeEvaluator sFloatEvaluator = new FloatEvaluator();
|
||||
private static final TypeEvaluator sDoubleEvaluator = new DoubleEvaluator();
|
||||
|
||||
// We try several different types when searching for appropriate setter/getter functions.
|
||||
// The caller may have supplied values in a type that does not match the setter/getter
|
||||
@@ -104,7 +103,7 @@ public class PropertyValuesHolder implements Cloneable {
|
||||
/**
|
||||
* The type evaluator used to calculate the animated values. This evaluator is determined
|
||||
* automatically based on the type of the start/end objects passed into the constructor,
|
||||
* but the system only knows about the primitive types int, double, and float. Any other
|
||||
* but the system only knows about the primitive types int and float. Any other
|
||||
* type will need to set the evaluator to a custom evaluator for that type.
|
||||
*/
|
||||
private TypeEvaluator mEvaluator;
|
||||
@@ -501,7 +500,7 @@ public class PropertyValuesHolder implements Cloneable {
|
||||
*/
|
||||
void init() {
|
||||
if (mEvaluator == null) {
|
||||
// We already handle int, float, long, double automatically, but not their Object
|
||||
// We already handle int and float automatically, but not their Object
|
||||
// equivalents
|
||||
mEvaluator = (mValueType == Integer.class) ? sIntEvaluator :
|
||||
(mValueType == Float.class) ? sFloatEvaluator :
|
||||
@@ -509,7 +508,7 @@ public class PropertyValuesHolder implements Cloneable {
|
||||
}
|
||||
if (mEvaluator != null) {
|
||||
// KeyframeSet knows how to evaluate the common types - only give it a custom
|
||||
// evaulator if one has been set on this class
|
||||
// evaluator if one has been set on this class
|
||||
mKeyframeSet.setEvaluator(mEvaluator);
|
||||
}
|
||||
}
|
||||
@@ -520,7 +519,7 @@ public class PropertyValuesHolder implements Cloneable {
|
||||
* desired. This may be important in cases where either the type of the values supplied
|
||||
* do not match the way that they should be interpolated between, or if the values
|
||||
* are of a custom type or one not currently understood by the animation system. Currently,
|
||||
* only values of type float, double, and int (and their Object equivalents, Float, Double,
|
||||
* only values of type float and int (and their Object equivalents: Float
|
||||
* and Integer) are correctly interpolated; all other types require setting a TypeEvaluator.
|
||||
* @param evaluator
|
||||
*/
|
||||
|
||||
@@ -143,10 +143,9 @@ public class ValueAnimator extends Animator {
|
||||
private static final TimeInterpolator sDefaultInterpolator =
|
||||
new AccelerateDecelerateInterpolator();
|
||||
|
||||
// type evaluators for the three primitive types handled by this implementation
|
||||
// type evaluators for the primitive types handled by this implementation
|
||||
private static final TypeEvaluator sIntEvaluator = new IntEvaluator();
|
||||
private static final TypeEvaluator sFloatEvaluator = new FloatEvaluator();
|
||||
private static final TypeEvaluator sDoubleEvaluator = new DoubleEvaluator();
|
||||
|
||||
/**
|
||||
* Used to indicate whether the animation is currently playing in reverse. This causes the
|
||||
@@ -858,7 +857,7 @@ public class ValueAnimator extends Animator {
|
||||
|
||||
/**
|
||||
* The type evaluator to be used when calculating the animated values of this animation.
|
||||
* The system will automatically assign a float, int, or double evaluator based on the type
|
||||
* The system will automatically assign a float or int evaluator based on the type
|
||||
* of <code>startValue</code> and <code>endValue</code> in the constructor. But if these values
|
||||
* are not one of these primitive types, or if different evaluation is desired (such as is
|
||||
* necessary with int values that represent colors), a custom evaluator needs to be assigned.
|
||||
|
||||
Reference in New Issue
Block a user