Implement NativeAnimated offsets on Android

Summary:
This diff implements NativeAnimation offsets on Android. Running the examples should show no change; however, calling `setOffset()` should offset the final value for any value node by that amount. This brings Android up to date with JS and iOS animation APIs.
Closes https://github.com/facebook/react-native/pull/10680

Differential Revision: D4119609

fbshipit-source-id: 96dccdf25f67c64c6787fd9ac762ec841cefc46a
This commit is contained in:
Ryan Gomba
2016-11-02 13:46:47 -07:00
committed by Facebook Github Bot
parent 68c61203ac
commit 8e81644f64
12 changed files with 64 additions and 14 deletions

View File

@@ -121,7 +121,7 @@ public class NativeAnimatedNodeTraversalTest {
private void createSimpleAnimatedViewWithOpacity(int viewTag, double opacity) {
mNativeAnimatedNodesManager.createAnimatedNode(
1,
JavaOnlyMap.of("type", "value", "value", opacity));
JavaOnlyMap.of("type", "value", "value", opacity, "offset", 0d));
mNativeAnimatedNodesManager.createAnimatedNode(
2,
JavaOnlyMap.of("type", "style", "style", JavaOnlyMap.of("opacity", 1)));
@@ -387,10 +387,10 @@ public class NativeAnimatedNodeTraversalTest {
double secondValue) {
mNativeAnimatedNodesManager.createAnimatedNode(
1,
JavaOnlyMap.of("type", "value", "value", 100d));
JavaOnlyMap.of("type", "value", "value", 100d, "offset", 0d));
mNativeAnimatedNodesManager.createAnimatedNode(
2,
JavaOnlyMap.of("type", "value", "value", 1000d));
JavaOnlyMap.of("type", "value", "value", 1000d, "offset", 0d));
mNativeAnimatedNodesManager.createAnimatedNode(
3,
@@ -558,10 +558,10 @@ public class NativeAnimatedNodeTraversalTest {
public void testMultiplicationNode() {
mNativeAnimatedNodesManager.createAnimatedNode(
1,
JavaOnlyMap.of("type", "value", "value", 1d));
JavaOnlyMap.of("type", "value", "value", 1d, "offset", 0d));
mNativeAnimatedNodesManager.createAnimatedNode(
2,
JavaOnlyMap.of("type", "value", "value", 5d));
JavaOnlyMap.of("type", "value", "value", 5d, "offset", 0d));
mNativeAnimatedNodesManager.createAnimatedNode(
3,
@@ -669,7 +669,7 @@ public class NativeAnimatedNodeTraversalTest {
public void testInterpolationNode() {
mNativeAnimatedNodesManager.createAnimatedNode(
1,
JavaOnlyMap.of("type", "value", "value", 10d));
JavaOnlyMap.of("type", "value", "value", 10d, "offset", 0d));
mNativeAnimatedNodesManager.createAnimatedNode(
2,