OSDN Git Service

T28518
authorYuji Konishi <yuji.k64613@gmail.com>
Tue, 14 Aug 2012 07:47:02 +0000 (16:47 +0900)
committerYuji Konishi <yuji.k64613@gmail.com>
Tue, 14 Aug 2012 07:47:02 +0000 (16:47 +0900)
source/workspace/EverFolder/src/com/yuji/ef/EverFolderActivity.java
source/workspace/EverFolder/src/com/yuji/ef/utility/ScaleUtil.java [new file with mode: 0644]

index 73e4e40..b718e1f 100644 (file)
@@ -16,6 +16,7 @@ import android.graphics.PixelFormat;
 import android.os.Bundle;
 import android.text.Editable;
 import android.text.TextWatcher;
+import android.util.DisplayMetrics;
 import android.view.Gravity;
 import android.view.Menu;
 import android.view.MenuItem;
@@ -41,6 +42,7 @@ import com.yuji.ef.dao.RootNode;
 import com.yuji.ef.utility.BaseActivity;
 import com.yuji.ef.utility.EvernoteIntentUtil;
 import com.yuji.ef.utility.FolderUtil;
+import com.yuji.ef.utility.ScaleUtil;
 
 public class EverFolderActivity extends BaseActivity {
        private enum ScreenStatus {
@@ -63,7 +65,6 @@ public class EverFolderActivity extends BaseActivity {
 
        private ScreenStatus status;
        private NodeComparator nodeComparator = new NodeComparator();
-
        private Node top = null;
        private int indent = 0;
        private int viewY;
@@ -168,6 +169,10 @@ public class EverFolderActivity extends BaseActivity {
                                        msgCancelOnClick();
                                }
                        });
+                       
+                       ScaleUtil scaleUtil = ScaleUtil.getInstance();
+                       scaleUtil.init(this);
+
                } catch (Exception e) {
                        // TODO
                        e.printStackTrace();
@@ -430,7 +435,7 @@ public class EverFolderActivity extends BaseActivity {
 
        private void updateList(Node node, int depth) {
                int N = 100;
-               int M = 120;
+               int M = 80;
                int x = N * (depth - indent) + 50;
 
                if (depth - indent >= 0
@@ -452,7 +457,8 @@ public class EverFolderActivity extends BaseActivity {
                        // }
                        view.setNodeId(node.getId());
                }
-               viewY += M;
+               ScaleUtil scaleUtil = ScaleUtil.getInstance();
+               viewY += M * scaleUtil.getScaledDensity();
 
                if (node.getStatus() != Node.Status.OPEN) {
                        return;
diff --git a/source/workspace/EverFolder/src/com/yuji/ef/utility/ScaleUtil.java b/source/workspace/EverFolder/src/com/yuji/ef/utility/ScaleUtil.java
new file mode 100644 (file)
index 0000000..e445985
--- /dev/null
@@ -0,0 +1,28 @@
+package com.yuji.ef.utility;
+
+import android.app.Activity;
+import android.util.DisplayMetrics;
+
+public class ScaleUtil {
+       private static ScaleUtil instance = null;
+       private DisplayMetrics metrics = new DisplayMetrics();  
+       
+       public static ScaleUtil getInstance() {
+               if (instance == null) {
+                       instance = new ScaleUtil();
+               }
+               return instance;
+       }
+
+       public void init(Activity activity){
+               activity.getWindowManager().getDefaultDisplay().getMetrics(metrics);
+       }
+
+       private ScaleUtil() {
+
+       }
+
+       public float getScaledDensity(){
+               return metrics.scaledDensity;
+       }
+}