diff options
author | H. Lehmann <ByteHamster@users.noreply.github.com> | 2020-02-03 11:11:44 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-03 11:11:44 +0100 |
commit | 154c22cc2fb7cd771ca697191358d74f8e6a3f57 (patch) | |
tree | 87e052ca294c985c52bc6a74deed5423123d49ad /app/src | |
parent | 6a327f252c2074de39841522272ed9448df46443 (diff) | |
parent | e7beaeb08569a506577d69ea6b5bed2e719b763d (diff) | |
download | AntennaPod-154c22cc2fb7cd771ca697191358d74f8e6a3f57.zip |
Merge pull request #3821 from ByteHamster/pie-chart-stroke
Fix overlapping lines in pie chart on small screens
Diffstat (limited to 'app/src')
-rw-r--r-- | app/src/main/java/de/danoeh/antennapod/view/PieChartView.java | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/view/PieChartView.java b/app/src/main/java/de/danoeh/antennapod/view/PieChartView.java index c0c74c42c..ab4920119 100644 --- a/app/src/main/java/de/danoeh/antennapod/view/PieChartView.java +++ b/app/src/main/java/de/danoeh/antennapod/view/PieChartView.java @@ -81,7 +81,7 @@ public class PieChartView extends AppCompatImageView { } public boolean isLargeEnoughToDisplay(int index) { - return getPercentageOfItem(index) > 0.05; + return getPercentageOfItem(index) > 0.04; } public int getColorOfItem(int index) { @@ -94,7 +94,6 @@ public class PieChartView extends AppCompatImageView { private static class PieChartDrawable extends Drawable { private static final float PADDING_DEGREES = 3f; - private static final float STROKE_SIZE = 15f; private PieChartData data; private final Paint paint; @@ -104,14 +103,16 @@ public class PieChartView extends AppCompatImageView { paint.setStyle(Paint.Style.STROKE); paint.setStrokeJoin(Paint.Join.ROUND); paint.setStrokeCap(Paint.Cap.ROUND); - paint.setStrokeWidth(STROKE_SIZE); } @Override public void draw(@NonNull Canvas canvas) { - float radius = getBounds().height() - STROKE_SIZE; + final float strokeSize = getBounds().height() / 30f; + paint.setStrokeWidth(strokeSize); + + float radius = getBounds().height() - strokeSize; float center = getBounds().width() / 2.f; - RectF arcBounds = new RectF(center - radius, STROKE_SIZE, center + radius, STROKE_SIZE + radius * 2); + RectF arcBounds = new RectF(center - radius, strokeSize, center + radius, strokeSize + radius * 2); float startAngle = 180; for (int i = 0; i < data.values.length; i++) { |