Merge "Support negative value in exponential data in the pathData." into lmp-mr1-dev

This commit is contained in:
ztenghui
2014-10-10 19:59:21 +00:00
committed by Android (Google) Code Review
23 changed files with 572 additions and 5 deletions

View File

@@ -34,7 +34,11 @@ public class PathParser {
Path path = new Path();
PathDataNode[] nodes = createNodesFromPathData(pathData);
if (nodes != null) {
PathDataNode.nodesToPath(nodes, path);
try {
PathDataNode.nodesToPath(nodes, path);
} catch (RuntimeException e) {
throw new RuntimeException("Error in parsing " + pathData, e);
}
return path;
}
return null;
@@ -128,7 +132,12 @@ public class PathParser {
while (end < s.length()) {
c = s.charAt(end);
if (((c - 'A') * (c - 'Z') <= 0) || (((c - 'a') * (c - 'z') <= 0))) {
// Note that 'e' or 'E' are not valid path commands, but could be
// used for floating point numbers' scientific notation.
// Therefore, when searching for next command, we should ignore 'e'
// and 'E'.
if ((((c - 'A') * (c - 'Z') <= 0) || ((c - 'a') * (c - 'z') <= 0))
&& c != 'e' && c != 'E') {
return end;
}
end++;
@@ -188,8 +197,7 @@ public class PathParser {
}
return Arrays.copyOf(results, count);
} catch (NumberFormatException e) {
Log.e(LOGTAG, "error in parsing \"" + s + "\"");
throw e;
throw new RuntimeException("error in parsing \"" + s + "\"", e);
}
}
@@ -206,7 +214,10 @@ public class PathParser {
boolean foundSeparator = false;
result.mEndWithNegOrDot = false;
boolean secondDot = false;
boolean isExponential = false;
for (; currentIndex < s.length(); currentIndex++) {
boolean isPrevExponential = isExponential;
isExponential = false;
char currentChar = s.charAt(currentIndex);
switch (currentChar) {
case ' ':
@@ -214,7 +225,8 @@ public class PathParser {
foundSeparator = true;
break;
case '-':
if (currentIndex != start) {
// The negative sign following a 'e' or 'E' is not a separator.
if (currentIndex != start && !isPrevExponential) {
foundSeparator = true;
result.mEndWithNegOrDot = true;
}
@@ -228,6 +240,10 @@ public class PathParser {
result.mEndWithNegOrDot = true;
}
break;
case 'e':
case 'E':
isExponential = true;
break;
}
if (foundSeparator) {
break;

View File

@@ -0,0 +1,86 @@
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<set
android:ordering="sequentially" >
<objectAnimator
android:duration="833"
android:propertyName="translateX"
android:valueFrom="144"
android:valueTo="144"
android:interpolator="@android:interpolator/linear" />
<objectAnimator
android:duration="100"
android:propertyName="translateX"
android:valueFrom="144"
android:valueTo="147.411817411"
android:interpolator="@interpolator/ic_open_ball_start_translatex_interpolator" />
</set>
<set
android:ordering="sequentially" >
<objectAnimator
android:duration="167"
android:propertyName="translateY"
android:valueFrom="144.58457376"
android:valueTo="144.58457376"
android:interpolator="@android:interpolator/linear" />
<objectAnimator
android:duration="333"
android:propertyName="translateY"
android:valueFrom="144.58457376"
android:valueTo="196.11111456"
android:interpolator="@interpolator/ic_open_ball_start_translatey_interpolator_1" />
<objectAnimator
android:duration="333"
android:propertyName="translateY"
android:valueFrom="196.11111456"
android:valueTo="196.11111456"
android:interpolator="@interpolator/ic_open_ball_start_translatey_interpolator_2" />
<objectAnimator
android:duration="100"
android:propertyName="translateY"
android:valueFrom="196.11111456"
android:valueTo="129.468428513"
android:interpolator="@interpolator/ic_open_ball_start_translatey_interpolator_3" />
</set>
<set
android:ordering="sequentially" >
<objectAnimator
android:duration="167"
android:propertyName="scaleX"
android:valueFrom="0"
android:valueTo="0.71187984"
android:interpolator="@interpolator/ic_open_ball_start_scalex_interpolator_1" />
<objectAnimator
android:duration="667"
android:propertyName="scaleX"
android:valueFrom="0.71187984"
android:valueTo="0.71187984"
android:interpolator="@interpolator/ic_open_ball_start_scalex_interpolator_2" />
<objectAnimator
android:duration="100"
android:propertyName="scaleX"
android:valueFrom="0.71187984"
android:valueTo="0.586201598553"
android:interpolator="@interpolator/ic_open_ball_start_scalex_interpolator_3" />
</set>
<set
android:ordering="sequentially" >
<objectAnimator
android:duration="167"
android:propertyName="scaleY"
android:valueFrom="0"
android:valueTo="0.71187984"
android:interpolator="@interpolator/ic_open_ball_start_scaley_interpolator_1" />
<objectAnimator
android:duration="667"
android:propertyName="scaleY"
android:valueFrom="0.71187984"
android:valueTo="0.71187984"
android:interpolator="@interpolator/ic_open_ball_start_scaley_interpolator_2" />
<objectAnimator
android:duration="100"
android:propertyName="scaleY"
android:valueFrom="0.71187984"
android:valueTo="0.586201598553"
android:interpolator="@interpolator/ic_open_ball_start_scaley_interpolator_3" />
</set>
</set>

View File

@@ -0,0 +1,17 @@
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<set
android:ordering="sequentially" >
<objectAnimator
android:duration="933"
android:propertyName="rotation"
android:valueFrom="-90"
android:valueTo="-90"
android:interpolator="@android:interpolator/linear" />
<objectAnimator
android:duration="1367"
android:propertyName="rotation"
android:valueFrom="-90"
android:valueTo="-87"
android:interpolator="@android:interpolator/linear" />
</set>
</set>

View File

@@ -0,0 +1,48 @@
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<set
android:ordering="sequentially" >
<objectAnimator
android:duration="500"
android:propertyName="pathData"
android:valueFrom="M 0,-17.3838043213 c -9.625,0.0 -17.0795440674,8.28025817871 -17.0795440674,17.4052734375 c 0.0,9.75645446777 7.51704406738,17.6295623779 17.0795440674,17.353515625 c 11.5579986572,-0.333648681641 17.2784118652,-8.72853088379 17.2784118652,-17.353515625 c 0.0,-8.62501525879 -7.65341186523,-17.4052734375 -17.2784118652,-17.4052734375 Z"
android:valueTo="M 0,-17.3838043213 c -9.625,0.0 -17.0795440674,8.28025817871 -17.0795440674,17.4052734375 c 0.0,9.75645446777 7.51704406738,17.6295623779 17.0795440674,17.353515625 c 11.5579986572,-0.333648681641 17.2784118652,-8.72853088379 17.2784118652,-17.353515625 c 0.0,-8.62501525879 -7.65341186523,-17.4052734375 -17.2784118652,-17.4052734375 Z"
android:valueType="pathType"
android:interpolator="@android:interpolator/linear" />
<objectAnimator
android:duration="267"
android:propertyName="pathData"
android:valueFrom="M 0,-17.3838043213 c -9.625,0.0 -17.0795440674,8.28025817871 -17.0795440674,17.4052734375 c 0.0,9.75645446777 7.51704406738,17.6295623779 17.0795440674,17.353515625 c 11.5579986572,-0.333648681641 17.2784118652,-8.72853088379 17.2784118652,-17.353515625 c 0.0,-8.62501525879 -7.65341186523,-17.4052734375 -17.2784118652,-17.4052734375 Z"
android:valueTo="M 0,-6 c -9.625,0 -23.5648803711,6.97859191895 -23.5648803711,16.1035919189 c 0.0,8.875 6.62738037109,8.39640808105 23.5648803711,8.39640808105 c 17.0625,0.0 23.8825073242,0.375 23.8825073242,-8.25 c 0.0,-8.625 -14.2574920654,-16.25 -23.8825073242,-16.25 Z"
android:valueType="pathType"
android:interpolator="@interpolator/ic_open_path_1_pathdata_interpolator_1" />
<objectAnimator
android:duration="33"
android:propertyName="pathData"
android:valueFrom="M 0,-6 c -9.625,0 -23.5648803711,6.97859191895 -23.5648803711,16.1035919189 c 0.0,8.875 6.62738037109,8.39640808105 23.5648803711,8.39640808105 c 17.0625,0.0 23.8825073242,0.375 23.8825073242,-8.25 c 0.0,-8.625 -14.2574920654,-16.25 -23.8825073242,-16.25 Z"
android:valueTo="M 0,-6 c -9.625,0 -23.5648803711,6.97859191895 -23.5648803711,16.1035919189 c 0.0,8.875 6.62738037109,8.39640808105 23.5648803711,8.39640808105 c 17.0625,0.0 23.8825073242,0.375 23.8825073242,-8.25 c 0.0,-8.625 -14.2574920654,-16.25 -23.8825073242,-16.25 Z"
android:valueType="pathType"
android:interpolator="@interpolator/ic_open_path_1_pathdata_interpolator_2" />
<objectAnimator
android:duration="67"
android:propertyName="pathData"
android:valueFrom="M 0,-6 c -9.625,0 -23.5648803711,6.97859191895 -23.5648803711,16.1035919189 c 0.0,8.875 6.62738037109,8.39640808105 23.5648803711,8.39640808105 c 17.0625,0.0 23.8825073242,0.375 23.8825073242,-8.25 c 0.0,-8.625 -14.2574920654,-16.25 -23.8825073242,-16.25 Z"
android:valueTo="M 0,-17.3838043213 c -9.625,0.0 -17.0795440674,8.28025817871 -17.0795440674,17.4052734375 c 0.0,9.75645446777 7.51704406738,17.6295623779 17.0795440674,17.353515625 c 11.5579986572,-0.333648681641 17.2784118652,-8.72853088379 17.2784118652,-17.353515625 c 0.0,-8.62501525879 -7.65341186523,-17.4052734375 -17.2784118652,-17.4052734375 Z"
android:valueType="pathType"
android:interpolator="@interpolator/ic_open_path_1_pathdata_interpolator_3" />
</set>
<set
android:ordering="sequentially" >
<objectAnimator
android:duration="933"
android:propertyName="fillAlpha"
android:valueFrom="1"
android:valueTo="1"
android:interpolator="@android:interpolator/linear" />
<objectAnimator
android:duration="17"
android:propertyName="fillAlpha"
android:valueFrom="1"
android:valueTo="0"
android:interpolator="@android:interpolator/linear" />
</set>
</set>

View File

@@ -0,0 +1,74 @@
<set xmlns:android="http://schemas.android.com/apk/res/android" >
<set
android:ordering="sequentially" >
<objectAnimator
android:duration="917"
android:propertyName="strokeAlpha"
android:valueFrom="0"
android:valueTo="0"
android:interpolator="@android:interpolator/linear" />
<objectAnimator
android:duration="17"
android:propertyName="strokeAlpha"
android:valueFrom="0"
android:valueTo="1"
android:interpolator="@android:interpolator/linear" />
</set>
<set
android:ordering="sequentially" >
<objectAnimator
android:duration="917"
android:propertyName="strokeWidth"
android:valueFrom="0"
android:valueTo="0"
android:interpolator="@android:interpolator/linear" />
<objectAnimator
android:duration="17"
android:propertyName="strokeWidth"
android:valueFrom="0"
android:valueTo="20"
android:interpolator="@android:interpolator/linear" />
</set>
<set
android:ordering="sequentially" >
<objectAnimator
android:duration="933"
android:propertyName="trimPathStart"
android:valueFrom="0.06"
android:valueTo="0.06"
android:interpolator="@android:interpolator/linear" />
<objectAnimator
android:duration="383"
android:propertyName="trimPathStart"
android:valueFrom="0.06"
android:valueTo="0.19231"
android:interpolator="@android:interpolator/linear" />
<objectAnimator
android:duration="983"
android:propertyName="trimPathStart"
android:valueFrom="0.19231"
android:valueTo="0.999"
android:interpolator="@interpolator/ic_open_path_1_1_trimpathstart_interpolator_2" />
</set>
<set
android:ordering="sequentially" >
<objectAnimator
android:duration="933"
android:propertyName="trimPathEnd"
android:valueFrom="0.061"
android:valueTo="0.061"
android:interpolator="@android:interpolator/linear" />
<objectAnimator
android:duration="300"
android:propertyName="trimPathEnd"
android:valueFrom="0.061"
android:valueTo="0.19231"
android:interpolator="@android:interpolator/linear" />
<objectAnimator
android:duration="1067"
android:propertyName="trimPathEnd"
android:valueFrom="0.19231"
android:valueTo="1"
android:interpolator="@interpolator/ic_open_path_1_1_trimpathend_interpolator_2" />
</set>
</set>

View File

@@ -0,0 +1,56 @@
<!-- Copyright (C) 2014 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.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:height="288dp"
android:width="288dp"
android:viewportHeight="288"
android:viewportWidth="288" >
<group
android:name="ball_start"
android:translateX="147.411817411"
android:translateY="129.468428513"
android:scaleX="0.586201598553"
android:scaleY="0.586201598553" >
<group
android:name="shape_1"
android:scaleX="0.76"
android:scaleY="0.748114397321" >
<path
android:name="path_1"
android:pathData="M 0,-17.3838043213 c -9.625,0.0 -17.0795440674,8.28025817871 -17.0795440674,17.4052734375 c 0.0,9.75645446777 7.51704406738,17.6295623779 17.0795440674,17.353515625 c 11.5579986572,-0.333648681641 17.2784118652,-8.72853088379 17.2784118652,-17.353515625 c 0.0,-8.62501525879 -7.65341186523,-17.4052734375 -17.2784118652,-17.4052734375 Z"
android:fillColor="#FFFF9000"
android:fillAlpha="0" />
</group>
</group>
<group
android:name="ball_swoop"
android:translateX="144"
android:translateY="144"
android:scaleX="0.752248"
android:scaleY="0.752248"
android:rotation="-87.6585365854" >
<path
android:name="path_1_1"
android:pathData="M -56.7679443359,1.03857421875 c 0.0,0.0 191.916503906,-13.9097290039 191.916503906,88.0704345703 c 0.0,58.4487304688 -83.6709594727,90.1372070312 -137.004882812,90.1372070312 c -82.1782226562,0.0 -177.867431641,-63.5512695312 -177.867431641,-178.207641602 c 0.0,-115.985717773 98.7650146484,-178.160949707 177.986938477,-178.160949707 c 76.2376251221,0.0 178.1640625,60.6796875 178.1640625,178.185058594 "
android:strokeColor="#FFFF9000"
android:strokeAlpha="1"
android:strokeWidth="20"
android:strokeLineCap="round"
android:trimPathStart="0.93025"
android:trimPathEnd="0.96248"
android:trimPathOffset="0"
android:fillColor="#00000000" />
</group>
</vector>

View File

@@ -0,0 +1,29 @@
<!-- Copyright (C) 2014 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.
-->
<animated-vector xmlns:android="http://schemas.android.com/apk/res/android"
android:drawable="@drawable/ic_open" >
<target
android:name="ball_start"
android:animation="@anim/ic_open_animation_ball_start" />
<target
android:name="path_1"
android:animation="@anim/ic_open_animation_path_1" />
<target
android:name="ball_swoop"
android:animation="@anim/ic_open_animation_ball_swoop" />
<target
android:name="path_1_1"
android:animation="@anim/ic_open_animation_path_1_1" />
</animated-vector>

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.33333333,0.0 0.202777547991,1.0 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.0103034467173,0.0 0.701918866569,1.0 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.649706648701,0.0 0.884285938423,1.92358061843 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.33333333,0.0 0.202777547991,1.0 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.0103034467173,0.0 0.701918866569,1.0 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.649706648701,0.0 0.884285938423,1.92358061843 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.353876322169,0.0 0.686452288267,-1.02094740172 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.754478769148,0.0 0.97,1.0 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.33333333,0.0 0.83333333333,1.0 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.324310863613,0.0 0.735625629425,-0.0161527278292 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.744517024668,0.120263649138 0.135947812437,0.994319475209 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.781904890372,0.126303002187 0.188007240906,0.953418294755 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.000100000000012,0.0 0.0,1.0 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 9.99999999007e-05,0.0 0.0,1.0 1.0,1.0" />

View File

@@ -0,0 +1,16 @@
<!-- Copyright (C) 2014 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.
-->
<pathInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:pathData="M 0 0 c 0.000100000000051,0.0 0.83333333333,1.0 1.0,1.0" />

View File

@@ -26,6 +26,7 @@ public class AnimatedVectorDrawableTest extends Activity implements View.OnClick
private static final String LOGCAT = "AnimatedVectorDrawableTest";
protected int[] icon = {
R.drawable.ic_open_animation,
R.drawable.ic_rotate_2_portrait_v2_animation,
R.drawable.ic_signal_airplane_v2_animation,
R.drawable.ic_hourglass_animation,