* [android] Fix bug of perspective
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/924d252c Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/924d252c Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/924d252c Branch: refs/heads/0.16-dev Commit: 924d252c9dc0dc517011983ca07d086f3c5e1bf8 Parents: 9715b8d Author: YorkShen <shenyua...@gmail.com> Authored: Wed Jul 26 16:51:05 2017 +0800 Committer: YorkShen <shenyua...@gmail.com> Committed: Wed Jul 26 16:51:05 2017 +0800 ---------------------------------------------------------------------- .../taobao/weex/ui/animation/WXAnimationBean.java | 16 +++------------- .../com/taobao/weex/ui/component/WXComponent.java | 2 +- 2 files changed, 4 insertions(+), 14 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/924d252c/android/sdk/src/main/java/com/taobao/weex/ui/animation/WXAnimationBean.java ---------------------------------------------------------------------- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/animation/WXAnimationBean.java b/android/sdk/src/main/java/com/taobao/weex/ui/animation/WXAnimationBean.java index 2635d7c..54b3111 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/animation/WXAnimationBean.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/animation/WXAnimationBean.java @@ -124,12 +124,10 @@ public class WXAnimationBean { @NonNull List<String> rawValue) { Map<Property<View,Float>, Float> result = WXDataStructureUtil.newHashMapWithExpectedSize(propertyList.size()); List<Float> convertedList = new ArrayList<>(propertyList.size()); - if (propertyList.contains(View.ROTATION)) { + if (propertyList.contains(View.ROTATION) || + propertyList.contains(View.ROTATION_X) || + propertyList.contains(View.ROTATION_Y)) { convertedList.addAll(parseRotationZ(rawValue)); - }else if(propertyList.contains(View.ROTATION_X)) { - convertedList.addAll(parseRotationXY(rawValue)); - }else if(propertyList.contains(View.ROTATION_Y)) { - convertedList.addAll(parseRotationXY(rawValue)); }else if (propertyList.contains(View.TRANSLATION_X) || propertyList.contains(View.TRANSLATION_Y)) { convertedList.addAll(parseTranslation(propertyList, width, height, rawValue,viewportW)); @@ -158,14 +156,6 @@ public class WXAnimationBean { return convertedList; } - private List<Float> parseRotationXY(@NonNull List<String> rawValue) { - List<Float> intermediate = parseRotationZ(rawValue); - for (int i = 0; i < intermediate.size(); i++) { - intermediate.set(i, -intermediate.get(i)); - } - return intermediate; - } - private @NonNull List<Float> parseRotationZ(@NonNull List<String> rawValue) { List<Float> convertedList = new ArrayList<>(1); int suffix; http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/924d252c/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java ---------------------------------------------------------------------- diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java index 3aa549d..80cd4db 100644 --- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java +++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java @@ -726,7 +726,7 @@ public abstract class WXComponent<T extends View> implements IWXObject, IWXActi T host = getHostView(); boolean ret = false; if (host != null) { - float value = WXUtils.getFloatByViewport(param, getInstance().getInstanceViewPortWidth()); + float value = WXViewUtils.getRealPxByWidth(WXUtils.getFloat(param), getInstance().getInstanceViewPortWidth()); float scale = host.getResources().getDisplayMetrics().density; if (!Float.isNaN(value) && value > 0) { host.setCameraDistance(value * scale);