1
0
mirror of https://codeberg.org/Freeyourgadget/Gadgetbridge synced 2024-06-24 05:50:47 +02:00

Add final tweaks to Daily Sessions List Dashboard view

This commit is contained in:
vanous 2020-11-13 14:21:23 +01:00
parent 5f85bba438
commit 71f6fd77cb
4 changed files with 130 additions and 128 deletions

View File

@ -8,10 +8,12 @@ import android.view.ViewGroup;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.TextView; import android.widget.TextView;
import com.github.mikephil.charting.animation.Easing;
import com.github.mikephil.charting.charts.PieChart; import com.github.mikephil.charting.charts.PieChart;
import com.github.mikephil.charting.data.PieData; import com.github.mikephil.charting.data.PieData;
import com.github.mikephil.charting.data.PieDataSet; import com.github.mikephil.charting.data.PieDataSet;
import com.github.mikephil.charting.data.PieEntry; import com.github.mikephil.charting.data.PieEntry;
import com.github.mikephil.charting.utils.MPPointF;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
@ -29,15 +31,15 @@ import nodomain.freeyourgadget.gadgetbridge.model.ActivityUser;
import nodomain.freeyourgadget.gadgetbridge.util.DateTimeUtils; import nodomain.freeyourgadget.gadgetbridge.util.DateTimeUtils;
public class ActivityListingAdapter extends AbstractActivityListingAdapter<ActivitySession> { public class ActivityListingAdapter extends AbstractActivityListingAdapter<ActivitySession> {
public static final String ACTIVE_STEPS_CHART_COLOR = "#3498db"; public static final String CHART_COLOR_START = "#e74c3c";
public static final String DISTANCE_CHART_COLOR = "#f1c40f"; public static final String CHART_COLOR_END = "#2ecc71";
public static final String ACTIVE_TIME_CHART_COLOR = "#e74c3c";
protected static final Logger LOG = LoggerFactory.getLogger(AbstractWeekChartFragment.class); protected static final Logger LOG = LoggerFactory.getLogger(AbstractWeekChartFragment.class);
protected final int ANIM_TIME = 250;
private final int SESSION_SUMMARY = ActivitySession.SESSION_SUMMARY; private final int SESSION_SUMMARY = ActivitySession.SESSION_SUMMARY;
ActivityUser activityUser = new ActivityUser(); ActivityUser activityUser = new ActivityUser();
int stepsGoal = activityUser.getStepsGoal(); int stepsGoal = activityUser.getStepsGoal();
int distanceMeters = activityUser.getDistanceMeters(); int distanceGoalMeters = activityUser.getDistanceMeters();
long activeTimeMillis = activityUser.getActiveTimeMinutes() * 60 * 1000L; long activeTimeGoalTimeMillis = activityUser.getActiveTimeMinutes() * 60 * 1000L;
public ActivityListingAdapter(Context context) { public ActivityListingAdapter(Context context) {
super(context); super(context);
@ -48,53 +50,44 @@ public class ActivityListingAdapter extends AbstractActivityListingAdapter<Activ
LayoutInflater inflater = (LayoutInflater) context LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE); .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
view = inflater.inflate(R.layout.activity_list_dashboard_item, parent, false); view = inflater.inflate(R.layout.activity_list_dashboard_item, parent, false);
PieChart ActiveStepsChart; PieChart ActiveStepsChart;
PieChart DistanceChart; PieChart DistanceChart;
PieChart ActiveTimeChart; PieChart ActiveTimeChart;
ActiveStepsChart = view.findViewById(R.id.activity_dashboard_piechart1); ActiveStepsChart = view.findViewById(R.id.activity_dashboard_piechart1);
setUpChart(ActiveStepsChart); setUpChart(ActiveStepsChart);
setStepsData(item, ActiveStepsChart, context); int steps = item.getActiveSteps();
setChartsData(ActiveStepsChart, steps, stepsGoal, context.getString(R.string.activity_list_summary_active_steps), context);
DistanceChart = view.findViewById(R.id.activity_dashboard_piechart2); DistanceChart = view.findViewById(R.id.activity_dashboard_piechart2);
setUpChart(DistanceChart); setUpChart(DistanceChart);
setDistanceData(item, DistanceChart, context); float distance = item.getDistance();
setChartsData(DistanceChart, distance, distanceGoalMeters, context.getString(R.string.distance), context);
ActiveTimeChart = view.findViewById(R.id.activity_dashboard_piechart3); ActiveTimeChart = view.findViewById(R.id.activity_dashboard_piechart3);
setUpChart(ActiveTimeChart); setUpChart(ActiveTimeChart);
setDurationData(item, ActiveTimeChart, context); long duration = item.getEndTime().getTime() - item.getStartTime().getTime();
setChartsData(ActiveTimeChart, duration, activeTimeGoalTimeMillis, context.getString(R.string.activity_list_summary_active_time), context);
TextView stepLabel = view.findViewById(R.id.line_layout_step_label); TextView stepLabel = view.findViewById(R.id.line_layout_step_label);
TextView stepTotalLabel = view.findViewById(R.id.line_layout_total_step_label); TextView stepTotalLabel = view.findViewById(R.id.line_layout_total_step_label);
TextView distanceLabel = view.findViewById(R.id.line_layout_distance_label); TextView distanceLabel = view.findViewById(R.id.line_layout_distance_label);
TextView hrLabel = view.findViewById(R.id.heartrate_widget_label); TextView hrLabel = view.findViewById(R.id.heartrate_widget_label);
TextView intensityLabel = view.findViewById(R.id.intensity_widget_label); TextView intensityLabel = view.findViewById(R.id.intensity_widget_label);
TextView intensity2Label = view.findViewById(R.id.line_layout_intensity2_label); TextView intensity2Label = view.findViewById(R.id.line_layout_intensity2_label);
TextView durationLabel = view.findViewById(R.id.line_layout_duration_label); TextView durationLabel = view.findViewById(R.id.line_layout_duration_label);
TextView sessionCountLabel = view.findViewById(R.id.line_layout_count_label); TextView sessionCountLabel = view.findViewById(R.id.line_layout_count_label);
LinearLayout durationLayout = view.findViewById(R.id.line_layout_duration); LinearLayout durationLayout = view.findViewById(R.id.line_layout_duration);
LinearLayout countLayout = view.findViewById(R.id.line_layout_count); LinearLayout countLayout = view.findViewById(R.id.line_layout_count);
View hrLayout = view.findViewById(R.id.heartrate_widget_icon); View hrLayout = view.findViewById(R.id.heartrate_widget_icon);
LinearLayout stepsLayout = view.findViewById(R.id.line_layout_step); LinearLayout stepsLayout = view.findViewById(R.id.line_layout_step);
LinearLayout stepsTotalLayout = view.findViewById(R.id.line_layout_total_step); LinearLayout stepsTotalLayout = view.findViewById(R.id.line_layout_total_step);
LinearLayout distanceLayout = view.findViewById(R.id.line_layout_distance); LinearLayout distanceLayout = view.findViewById(R.id.line_layout_distance);
View intensityLayout = view.findViewById(R.id.intensity_widget_icon); View intensityLayout = view.findViewById(R.id.intensity_widget_icon);
View intensity2Layout = view.findViewById(R.id.line_layout_intensity2); View intensity2Layout = view.findViewById(R.id.line_layout_intensity2);
stepLabel.setText(getStepLabel(item)); stepLabel.setText(getStepLabel(item));
stepTotalLabel.setText(getStepTotalLabel(item)); stepTotalLabel.setText(getStepTotalLabel(item));
distanceLabel.setText(getDistanceLabel(item)); distanceLabel.setText(getDistanceLabel(item));
hrLabel.setText(getHrLabel(item)); hrLabel.setText(getHrLabel(item));
intensityLabel.setText(getIntensityLabel(item)); intensityLabel.setText(getIntensityLabel(item));
@ -147,70 +140,38 @@ public class ActivityListingAdapter extends AbstractActivityListingAdapter<Activ
return view; return view;
} }
private void setStepsData(ActivitySession item, PieChart DashboardChart, Context context) { private void setChartsData(PieChart pieChart, float value, float target, String label, Context context) {
ArrayList<PieEntry> entries = new ArrayList<>(); ArrayList<PieEntry> entries = new ArrayList<>();
int steps = item.getActiveSteps(); entries.add(new PieEntry((float) value, context.getResources().getDrawable(R.drawable.ic_star_gold)));
entries.add(new PieEntry((float) steps));
if (steps < stepsGoal) { Easing.EasingFunction animationEffect = Easing.EaseInOutSine;
entries.add(new PieEntry((float) (stepsGoal - steps)));
if (value < target) {
entries.add(new PieEntry((float) (target - value)));
} }
DashboardChart.setCenterText(String.format("%d%%\n%s", (int) (steps * 100 / stepsGoal), context.getString(R.string.activity_list_summary_active_steps))); pieChart.setCenterText(String.format("%d%%\n%s", (int) (value * 100 / target), label));
float colorValue = Math.max(0, Math.min(1, value / target));
int chartColor = interpolateColor(Color.parseColor(CHART_COLOR_START), Color.parseColor(CHART_COLOR_END), colorValue);
PieDataSet dataSet = new PieDataSet(entries, ""); PieDataSet dataSet = new PieDataSet(entries, "");
dataSet.setDrawIcons(false);
dataSet.setIconsOffset(new MPPointF(0, -66));
if (colorValue == 1) {
dataSet.setDrawIcons(true);
}
dataSet.setSliceSpace(0f); dataSet.setSliceSpace(0f);
dataSet.setSelectionShift(5f); dataSet.setSelectionShift(5f);
dataSet.setColors(chartColor, Color.LTGRAY);
dataSet.setColors(Color.parseColor(ACTIVE_STEPS_CHART_COLOR), Color.LTGRAY);
PieData data = new PieData(dataSet); PieData data = new PieData(dataSet);
data.setValueTextSize(0f); data.setValueTextSize(0f);
data.setValueTextColor(Color.WHITE); data.setValueTextColor(Color.WHITE);
DashboardChart.setData(data);
DashboardChart.invalidate();
}
private void setDistanceData(ActivitySession item, PieChart DashboardChart, Context context) { pieChart.setData(data);
ArrayList<PieEntry> entries = new ArrayList<>(); pieChart.invalidate();
float distance = item.getDistance(); pieChart.animateY(ANIM_TIME, animationEffect);
entries.add(new PieEntry(distance));
if (distance < distanceMeters) {
entries.add(new PieEntry((float) (distanceMeters - distance)));
}
DashboardChart.setCenterText(String.format("%d%%\n%s", (int) (distance * 100 / distanceMeters), context.getString(R.string.distance)));
PieDataSet dataSet = new PieDataSet(entries, "");
dataSet.setSliceSpace(0f);
dataSet.setSelectionShift(5f);
dataSet.setColors(Color.parseColor(DISTANCE_CHART_COLOR), Color.LTGRAY);
PieData data = new PieData(dataSet);
data.setValueTextSize(0f);
data.setValueTextColor(Color.WHITE);
DashboardChart.setData(data);
DashboardChart.invalidate();
}
private void setDurationData(ActivitySession item, PieChart DashboardChart, Context context) {
ArrayList<PieEntry> entries = new ArrayList<>();
long duration = item.getEndTime().getTime() - item.getStartTime().getTime();
entries.add(new PieEntry((float) duration));
if (duration < activeTimeMillis) {
entries.add(new PieEntry((float) (activeTimeMillis - duration)));
}
DashboardChart.setCenterText(String.format("%d%%\n%s", (int) (duration * 100 / activeTimeMillis), context.getString(R.string.activity_list_summary_active_time)));
PieDataSet dataSet = new PieDataSet(entries, "");
dataSet.setSliceSpace(0f);
dataSet.setSelectionShift(5f);
dataSet.setColors(Color.parseColor(ACTIVE_TIME_CHART_COLOR), Color.LTGRAY);
PieData data = new PieData(dataSet);
data.setValueTextSize(0f);
data.setValueTextColor(Color.WHITE);
DashboardChart.setData(data);
DashboardChart.invalidate();
} }
private void setUpChart(PieChart DashboardChart) { private void setUpChart(PieChart DashboardChart) {
@ -229,6 +190,21 @@ public class ActivityListingAdapter extends AbstractActivityListingAdapter<Activ
DashboardChart.setCenterTextOffset(0, 0); DashboardChart.setCenterTextOffset(0, 0);
} }
private float interpolate(float a, float b, float proportion) {
return (a + ((b - a) * proportion));
}
private int interpolateColor(int a, int b, float proportion) {
float[] hsva = new float[3];
float[] hsvb = new float[3];
Color.colorToHSV(a, hsva);
Color.colorToHSV(b, hsvb);
for (int i = 0; i < 3; i++) {
hsvb[i] = interpolate(hsva[i], hsvb[i], proportion);
}
return Color.HSVToColor(hsvb);
}
@Override @Override
protected String getDateLabel(ActivitySession item) { protected String getDateLabel(ActivitySession item) {
return ""; return "";

View File

@ -27,6 +27,7 @@ import android.view.ViewGroup;
import android.widget.ListView; import android.widget.ListView;
import android.widget.TextView; import android.widget.TextView;
import com.github.mikephil.charting.animation.Easing;
import com.github.mikephil.charting.charts.Chart; import com.github.mikephil.charting.charts.Chart;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -106,7 +107,7 @@ public class ActivityListingChartFragment extends AbstractChartFragment {
protected void updateChartsnUIThread(ChartsData chartsData) { protected void updateChartsnUIThread(ChartsData chartsData) {
MyChartsData mcd = (MyChartsData) chartsData; MyChartsData mcd = (MyChartsData) chartsData;
if (mcd.getStepSessions().toArray().length == 0) { if (mcd.getStepSessions().toArray().length == 0) {
getChartsHost().enableSwipeRefresh(true); //try to enable pull to refresh, might be needed getChartsHost().enableSwipeRefresh(true); //enable pull to refresh, might be needed
} else { } else {
getChartsHost().enableSwipeRefresh(false); //disable pull to refresh as it collides with swipable view getChartsHost().enableSwipeRefresh(false); //disable pull to refresh as it collides with swipable view
} }
@ -117,8 +118,7 @@ public class ActivityListingChartFragment extends AbstractChartFragment {
@Override @Override
protected void renderCharts() { protected void renderCharts() {
}
}
@Override @Override
protected void setupLegend(Chart chart) { protected void setupLegend(Chart chart) {

View File

@ -0,0 +1,9 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@android:color/holo_orange_light"
android:pathData="M12,17.27L18.18,21l-1.64,-7.03L22,9.24l-7.19,-0.61L12,2 9.19,8.63 2,9.24l5.46,4.73L5.82,21z" />
</vector>

View File

@ -16,39 +16,34 @@
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="wrap_content"
android:orientation="vertical"> android:gravity="center"
android:orientation="horizontal">
<LinearLayout <com.github.mikephil.charting.charts.PieChart
android:layout_width="match_parent" android:id="@+id/activity_dashboard_piechart1"
android:layout_height="wrap_content" android:layout_width="110dp"
android:gravity="center" android:layout_height="110dp"
android:orientation="horizontal"> android:layout_gravity="bottom|center"
android:layout_marginBottom="0dp"
android:layout_weight="1" />
<com.github.mikephil.charting.charts.PieChart <com.github.mikephil.charting.charts.PieChart
android:id="@+id/activity_dashboard_piechart1" android:id="@+id/activity_dashboard_piechart2"
android:layout_width="110dp" android:layout_width="110dp"
android:layout_height="110dp" android:layout_height="110dp"
android:layout_gravity="bottom|center" android:layout_gravity="bottom|center"
android:layout_marginBottom="0dp" android:layout_marginBottom="0dp"
android:layout_weight="1" /> android:layout_weight="1" />
<com.github.mikephil.charting.charts.PieChart <com.github.mikephil.charting.charts.PieChart
android:id="@+id/activity_dashboard_piechart2" android:id="@+id/activity_dashboard_piechart3"
android:layout_width="110dp" android:layout_width="110dp"
android:layout_height="110dp" android:layout_height="110dp"
android:layout_gravity="bottom|center" android:layout_gravity="bottom|center"
android:layout_marginBottom="0dp" android:layout_marginBottom="0dp"
android:layout_weight="1" /> android:layout_weight="1" />
<!--
<com.github.mikephil.charting.charts.PieChart
android:id="@+id/activity_dashboard_piechart3"
android:layout_width="110dp"
android:layout_height="110dp"
android:layout_gravity="bottom|center"
android:layout_marginBottom="0dp"
android:layout_weight="1" />
<!--
<com.github.mikephil.charting.charts.PieChart <com.github.mikephil.charting.charts.PieChart
android:id="@+id/activity_dashboard_piechart4" android:id="@+id/activity_dashboard_piechart4"
android:layout_width="90dp" android:layout_width="90dp"
@ -56,15 +51,13 @@
android:layout_gravity="bottom|center" android:layout_gravity="bottom|center"
android:layout_marginBottom="0dp" /> android:layout_marginBottom="0dp" />
--> -->
</LinearLayout>
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_gravity="center" android:layout_gravity="center"
android:layout_marginBottom="5dp" android:layout_marginBottom="0dp"
android:gravity="center" android:gravity="center"
android:orientation="horizontal"> android:orientation="horizontal">
@ -99,15 +92,15 @@
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="5dp" android:layout_marginTop="0dp"
android:layout_marginBottom="5dp" android:layout_marginBottom="10dp"
android:baselineAligned="false" android:baselineAligned="false"
android:gravity="bottom|center" android:gravity="bottom|center"
android:orientation="horizontal"> android:orientation="horizontal">
<LinearLayout <LinearLayout
android:id="@+id/line_layout_step" android:id="@+id/line_layout_step"
android:layout_width="wrap_content" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center|top" android:layout_gravity="center|top"
android:layout_marginStart="1dp" android:layout_marginStart="1dp"
@ -132,7 +125,10 @@
android:gravity="center" android:gravity="center"
android:maxLines="2" android:maxLines="2"
android:scrollHorizontally="false" android:scrollHorizontally="false"
android:text="@string/activity_list_summary_active_steps" /> android:text="@string/activity_list_summary_active_steps"
android:textAllCaps="true"
android:textColor="@color/accent"
android:textStyle="bold" />
<TextView <TextView
android:id="@+id/line_layout_step_label" android:id="@+id/line_layout_step_label"
@ -143,14 +139,15 @@
android:gravity="center" android:gravity="center"
android:maxLines="1" android:maxLines="1"
android:scrollHorizontally="false" android:scrollHorizontally="false"
android:text="15000" /> android:text="15000"
android:textSize="24sp" />
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout
android:id="@+id/line_layout_distance" android:id="@+id/line_layout_distance"
android:layout_width="wrap_content" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center|top" android:layout_gravity="center|top"
android:layout_marginStart="1dp" android:layout_marginStart="1dp"
@ -175,7 +172,10 @@
android:gravity="center" android:gravity="center"
android:maxLines="2" android:maxLines="2"
android:scrollHorizontally="false" android:scrollHorizontally="false"
android:text="@string/distance" /> android:text="@string/distance"
android:textAllCaps="true"
android:textColor="@color/accent"
android:textStyle="bold" />
<TextView <TextView
android:id="@+id/line_layout_distance_label" android:id="@+id/line_layout_distance_label"
@ -186,14 +186,15 @@
android:gravity="center" android:gravity="center"
android:maxLines="1" android:maxLines="1"
android:scrollHorizontally="false" android:scrollHorizontally="false"
android:text="15.1km" /> android:text="15.1km"
android:textSize="24sp" />
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout
android:id="@+id/line_layout_duration" android:id="@+id/line_layout_duration"
android:layout_width="wrap_content" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center|top" android:layout_gravity="center|top"
android:layout_marginStart="1dp" android:layout_marginStart="1dp"
@ -218,7 +219,10 @@
android:gravity="center" android:gravity="center"
android:maxLines="2" android:maxLines="2"
android:scrollHorizontally="false" android:scrollHorizontally="false"
android:text="@string/activity_list_summary_active_time" /> android:text="@string/activity_list_summary_active_time"
android:textAllCaps="true"
android:textColor="@color/accent"
android:textStyle="bold" />
<TextView <TextView
android:id="@+id/line_layout_duration_label" android:id="@+id/line_layout_duration_label"
@ -229,7 +233,8 @@
android:gravity="center" android:gravity="center"
android:maxLines="1" android:maxLines="1"
android:scrollHorizontally="false" android:scrollHorizontally="false"
android:text="122" /> android:text="122"
android:textSize="24sp" />
</LinearLayout> </LinearLayout>
@ -247,7 +252,7 @@
<LinearLayout <LinearLayout
android:id="@+id/line_layout_total_step" android:id="@+id/line_layout_total_step"
android:layout_width="wrap_content" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center|top" android:layout_gravity="center|top"
android:layout_marginStart="1dp" android:layout_marginStart="1dp"
@ -272,7 +277,10 @@
android:gravity="center" android:gravity="center"
android:maxLines="2" android:maxLines="2"
android:scrollHorizontally="false" android:scrollHorizontally="false"
android:text="@string/live_activity_total_steps" /> android:text="@string/live_activity_total_steps"
android:textAllCaps="true"
android:textColor="@color/accent"
android:textStyle="bold" />
<TextView <TextView
android:id="@+id/line_layout_total_step_label" android:id="@+id/line_layout_total_step_label"
@ -283,14 +291,15 @@
android:gravity="center" android:gravity="center"
android:maxLines="1" android:maxLines="1"
android:scrollHorizontally="false" android:scrollHorizontally="false"
android:text="15000" /> android:text="15000"
android:textSize="24sp" />
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout
android:id="@+id/line_layout_count" android:id="@+id/line_layout_count"
android:layout_width="wrap_content" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="center|top" android:layout_gravity="center|top"
android:layout_marginStart="1dp" android:layout_marginStart="1dp"
@ -315,7 +324,10 @@
android:gravity="center" android:gravity="center"
android:maxLines="2" android:maxLines="2"
android:scrollHorizontally="false" android:scrollHorizontally="false"
android:text="@string/activity_list_summary_activities" /> android:text="@string/activity_list_summary_activities"
android:textAllCaps="true"
android:textColor="@color/accent"
android:textStyle="bold" />
<TextView <TextView
android:id="@+id/line_layout_count_label" android:id="@+id/line_layout_count_label"
@ -326,15 +338,16 @@
android:gravity="center" android:gravity="center"
android:maxLines="1" android:maxLines="1"
android:scrollHorizontally="false" android:scrollHorizontally="false"
android:text="15" /> android:text="15"
android:textSize="24sp" />
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout
android:id="@+id/line_layout_intensity2" android:id="@+id/line_layout_intensity2"
android:layout_width="wrap_content" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_gravity="bottom|center" android:layout_gravity="center|top"
android:layout_marginStart="1dp" android:layout_marginStart="1dp"
android:layout_marginEnd="1dp" android:layout_marginEnd="1dp"
android:layout_weight="1" android:layout_weight="1"
@ -357,7 +370,10 @@
android:gravity="center" android:gravity="center"
android:maxLines="2" android:maxLines="2"
android:scrollHorizontally="false" android:scrollHorizontally="false"
android:text="@string/activity_list_summary_intensity" /> android:text="@string/activity_list_summary_intensity"
android:textAllCaps="true"
android:textColor="@color/accent"
android:textStyle="bold" />
<TextView <TextView
android:id="@+id/line_layout_intensity2_label" android:id="@+id/line_layout_intensity2_label"
@ -368,7 +384,8 @@
android:gravity="center" android:gravity="center"
android:maxLines="1" android:maxLines="1"
android:scrollHorizontally="false" android:scrollHorizontally="false"
android:text="15" /> android:text="15"
android:textSize="24sp" />
</LinearLayout> </LinearLayout>