You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by so...@apache.org on 2017/03/10 03:33:10 UTC

incubator-weex git commit: * [android] bug fix viewport

Repository: incubator-weex
Updated Branches:
  refs/heads/0.11-dev 1c9fe4e27 -> a86a639cf


* [android] bug fix viewport


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/a86a639c
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/a86a639c
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/a86a639c

Branch: refs/heads/0.11-dev
Commit: a86a639cfe2eded84df5bd59c45312bae99fa05e
Parents: 1c9fe4e
Author: zshshr <zh...@gmail.com>
Authored: Fri Mar 10 11:25:43 2017 +0800
Committer: zshshr <zh...@gmail.com>
Committed: Fri Mar 10 11:25:43 2017 +0800

----------------------------------------------------------------------
 .../sdk/src/main/java/com/taobao/weex/common/Constants.java  | 1 +
 .../main/java/com/taobao/weex/ui/module/WXMetaModule.java    | 4 +++-
 .../sdk/src/main/java/com/taobao/weex/utils/WXViewUtils.java | 8 ++++----
 3 files changed, 8 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/a86a639c/android/sdk/src/main/java/com/taobao/weex/common/Constants.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java
index 125ae3a..682ab8e 100755
--- a/android/sdk/src/main/java/com/taobao/weex/common/Constants.java
+++ b/android/sdk/src/main/java/com/taobao/weex/common/Constants.java
@@ -362,6 +362,7 @@ public class Constants {
 
   public interface Value {
 
+    int DENSITY = 3;
     int NAV_BAR_SHOWN = 0;
     int NAV_BAR_HIDDEN = 1;
     int AUTO = -1;

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/a86a639c/android/sdk/src/main/java/com/taobao/weex/ui/module/WXMetaModule.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/module/WXMetaModule.java b/android/sdk/src/main/java/com/taobao/weex/ui/module/WXMetaModule.java
index 2144dee..13ed382 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/module/WXMetaModule.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/module/WXMetaModule.java
@@ -204,6 +204,7 @@
  */
 package com.taobao.weex.ui.module;
 
+import android.content.Context;
 import android.text.TextUtils;
 
 import com.alibaba.fastjson.JSON;
@@ -230,8 +231,9 @@ public class WXMetaModule extends WXModule {
             try {
                 param = URLDecoder.decode(param, "utf-8");
                 JSONObject jsObj = JSON.parseObject(param);
+                Context cxt = mWXSDKInstance.getContext();
                 if (DEVICE_WIDTH.endsWith(jsObj.getString(WIDTH))) {
-                    mWXSDKInstance.setViewPortWidth(WXViewUtils.getScreenDensityDpi(mWXSDKInstance.getContext()));
+                    mWXSDKInstance.setViewPortWidth((int)(WXViewUtils.getScreenWidth(cxt)/WXViewUtils.getScreenDensity(cxt)));
                 } else {
                     int width = jsObj.getInteger(WIDTH);
                     if (width > 0) {

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/a86a639c/android/sdk/src/main/java/com/taobao/weex/utils/WXViewUtils.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/utils/WXViewUtils.java b/android/sdk/src/main/java/com/taobao/weex/utils/WXViewUtils.java
index 798fc88..d7e59eb 100755
--- a/android/sdk/src/main/java/com/taobao/weex/utils/WXViewUtils.java
+++ b/android/sdk/src/main/java/com/taobao/weex/utils/WXViewUtils.java
@@ -215,7 +215,6 @@ import android.graphics.drawable.LayerDrawable;
 import android.os.Build;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
-import android.util.DisplayMetrics;
 import android.view.View;
 import android.view.ViewGroup;
 import android.view.ViewGroup.LayoutParams;
@@ -223,6 +222,7 @@ import android.view.ViewGroup.LayoutParams;
 import com.taobao.weex.WXEnvironment;
 import com.taobao.weex.WXSDKInstance;
 import com.taobao.weex.WXSDKManager;
+import com.taobao.weex.common.Constants;
 import com.taobao.weex.common.WXRuntimeException;
 import com.taobao.weex.ui.view.border.BorderDrawable;
 
@@ -308,16 +308,16 @@ public class WXViewUtils {
     return getScreenWidth(WXEnvironment.sApplication);
   }
 
-  public static int getScreenDensityDpi(Context ctx){
+  public static float getScreenDensity(Context ctx){
     if(ctx != null){
       try{
         Resources res = ctx.getResources();
-        return res.getDisplayMetrics().densityDpi;
+        return res.getDisplayMetrics().density;
       }catch (Exception e){
         WXLogUtils.e("getScreenDensityDpi exception:"+e.getMessage());
       }
     }
-    return DisplayMetrics.DENSITY_DEFAULT;
+    return Constants.Value.DENSITY;
   }
 
   public static int getScreenWidth(Context ctx) {