OSDN Git Service

グラフ一覧でラップタイムのところに線をつなぐようにした。
authorMRSa <mrsa@myad.jp>
Sun, 15 Apr 2018 09:44:40 +0000 (18:44 +0900)
committerMRSa <mrsa@myad.jp>
Sun, 15 Apr 2018 09:44:40 +0000 (18:44 +0900)
wear/src/main/java/net/osdn/gokigen/joggingtimer/stopwatch/MainActivity.java
wear/src/main/java/net/osdn/gokigen/joggingtimer/stopwatch/graphview/LapTimeGraphView.java

index b9925c0..fbc9652 100644 (file)
@@ -8,9 +8,7 @@ import android.support.wearable.activity.WearableActivity;
 import android.util.Log;
 import android.view.KeyEvent;
 import android.view.View;
-import android.widget.ArrayAdapter;
 import android.widget.ImageButton;
-import android.widget.ListAdapter;
 import android.widget.ListView;
 import android.widget.RelativeLayout;
 import android.widget.TextView;
@@ -18,7 +16,6 @@ import android.widget.TextView;
 import net.osdn.gokigen.joggingtimer.R;
 import net.osdn.gokigen.joggingtimer.recordlist.ListActivity;
 import net.osdn.gokigen.joggingtimer.stopwatch.graphview.LapTimeGraphView;
-import net.osdn.gokigen.joggingtimer.stopwatch.listview.LapTimeItems;
 import net.osdn.gokigen.joggingtimer.utilities.TimeStringConvert;
 
 import java.text.SimpleDateFormat;
@@ -563,7 +560,7 @@ public class MainActivity extends WearableActivity implements IClickCallback, My
      */
     private void updateElapsedTimesGraph()
     {
-        Log.v(TAG, "updateElapsedTimesGraph()");
+        //Log.v(TAG, "updateElapsedTimesGraph()");
         LapTimeGraphView view = findViewById(R.id.graph_area);
         view.invalidate();
     }
index a5dd0b6..79ce1d5 100644 (file)
@@ -4,6 +4,7 @@ import android.content.Context;
 import android.graphics.Canvas;
 import android.graphics.Color;
 import android.graphics.Paint;
+import android.graphics.Path;
 import android.graphics.Rect;
 import android.graphics.RectF;
 import android.util.AttributeSet;
@@ -226,8 +227,8 @@ public class LapTimeGraphView extends View
 
         Paint paint = new Paint();
         paint.setColor(Color.WHITE);
-        paint.setStyle(Paint.Style.STROKE);
-        paint.setStyle(Paint.Style.FILL);
+        paint.setColor(Color.GRAY);
+        paint.setStyle(Paint.Style.FILL_AND_STROKE);
         paint.setStrokeWidth(0.0f);
         paint.setAntiAlias(true);
 
@@ -244,17 +245,27 @@ public class LapTimeGraphView extends View
             return;
         }
 
+        Path linePath = new Path();
+        linePath.moveTo(0.0f, height);  // 0原点から線を引く
         for (Long time : curLapTimeList)
         {
-            canvas.drawCircle((startX + (boxWidthUnit / 2.0f)), (height - boxHeightUnit * time), circleRadius, paint);
+            float cX = (startX + (boxWidthUnit / 2.0f));
+            float cY = (height - boxHeightUnit * time);
+            linePath.lineTo(cX, cY);
+            canvas.drawCircle(cX, cY, circleRadius, paint);
             startX = startX + boxWidthUnit;
         }
-
         if (isStarted)
         {
             long currentLapTime = System.currentTimeMillis() - lastSystemLaptime;
-            canvas.drawCircle((startX + (boxWidthUnit / 2.0f)), (height - boxHeightUnit * currentLapTime), circleRadius, paint);
+            float cX = (startX + (boxWidthUnit / 2.0f));
+            float cY = (height - boxHeightUnit * currentLapTime);
+            linePath.lineTo(cX, cY);
+            canvas.drawCircle(cX, cY, circleRadius, paint);
         }
+        paint.setStyle(Paint.Style.STROKE);
+        paint.setColor(Color.GRAY);
+        canvas.drawPath(linePath, paint);
     }
 
     /**