<!-- Accent color that matches the settings launcher icon -->
<color name="icon_accent">#ffabffec</color>
- <color name="summary_default_start">#ff009587</color>
- <color name="summary_default_end">#ffced7db</color>
-
<color name="importance_icon_tint">#8a000000</color>
<color name="importance_disabled_tint">#4d000000</color>
private String mUnits;
private int mLeft, mMiddle, mRight;
+ private boolean mColorsSet = false;
private float mLeftRatio, mMiddleRatio, mRightRatio;
private String mStartLabel;
private String mEndLabel;
public SummaryPreference(Context context, AttributeSet attrs) {
super(context, attrs);
setLayoutResource(R.layout.settings_summary_preference);
- mLeft = context.getColor(R.color.summary_default_start);
- mRight = context.getColor(R.color.summary_default_end);
}
public void setAmount(String amount) {
mLeft = left;
mMiddle = middle;
mRight = right;
+ mColorsSet = true;
notifyChanged();
}
LinearColorBar colorBar = (LinearColorBar) holder.itemView.findViewById(R.id.color_bar);
colorBar.setRatios(mLeftRatio, mMiddleRatio, mRightRatio);
- colorBar.setColors(mLeft, mMiddle, mRight);
+ if (mColorsSet) {
+ colorBar.setColors(mLeft, mMiddle, mRight);
+ }
if (!TextUtils.isEmpty(mStartLabel) || !TextUtils.isEmpty(mEndLabel)) {
holder.findViewById(R.id.label_bar).setVisibility(View.VISIBLE);
package com.android.settings.applications;
import android.content.Context;
+import android.content.res.Resources;
import android.graphics.Canvas;
import android.graphics.LinearGradient;
import android.graphics.Paint;
import android.graphics.Shader;
import android.util.AttributeSet;
import android.util.DisplayMetrics;
+import android.util.TypedValue;
import android.view.MotionEvent;
import android.widget.LinearLayout;
public class LinearColorBar extends LinearLayout {
- static final int LEFT_COLOR = 0xff009688;
- static final int MIDDLE_COLOR = 0xff009688;
+
static final int RIGHT_COLOR = 0xffced7db;
static final int GRAY_COLOR = 0xff555555;
static final int WHITE_COLOR = 0xffffffff;
private float mYellowRatio;
private float mGreenRatio;
- private int mLeftColor = LEFT_COLOR;
- private int mMiddleColor = MIDDLE_COLOR;
+ private int mLeftColor;
+ private int mMiddleColor;
private int mRightColor = RIGHT_COLOR;
private boolean mShowIndicator = true;
? 2 : 1;
mEdgeGradientPaint.setStrokeWidth(mLineWidth);
mEdgeGradientPaint.setAntiAlias(true);
-
+
+ Resources.Theme theme = context.getTheme();
+ TypedValue typedValue = new TypedValue();
+ theme.resolveAttribute(android.R.attr.colorAccent, typedValue, true);
+ mLeftColor = mMiddleColor = context.getColor(typedValue.resourceId);
}
public void setOnRegionTappedListener(OnRegionTappedListener listener) {