2015-06-28 1 views
0

Как я указал шестнадцатеричное значение для цвета фона моей панели действий, мне сложно решить, какое шестнадцатеричное значение использовать для цвета фона строки состояния , Существуют ли какие-либо инструменты, которые могут помочь найти подходящий цвет фона для строки состояния, когда задается цвет фона панели действий?Определение того, какой цвет фона использовать для строки состояния

ActionBar actionBar = getSupportActionBar(); 
actionBar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#E32017"))); 

ответ

2

Установить цвет на StatusBar в качестве ближайшего вашего ActionBar цвет:

private String actionBarColor = "#AC6363"; 

Набор Цвет фона на ActionBar:

ActionBar bar = getActionBar(); 
bar.setBackgroundDrawable(new ColorDrawable(Color.parseColor(actionBarColor))); 

Чтобы установить StatusBar цвет: на OnCreate от Активность:

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) { 
    getWindow().setStatusBarColor(getFactorColor(Color.parseColor(actionBarColor), 0.8f)); 
} 

Получить фактор цвет:

private int getFactorColor(int color, float factor) { 
    float[] hsv = new float[3]; 
    Color.colorToHSV(color, hsv); 
    hsv[2] *= factor; 
    color = Color.HSVToColor(hsv); 
    return color; 
} 

Совершено

+0

Прохладный. Благодарю. Можно ли изменить значки в строке состояния на темный цвет? – MacaronLover

+1

@MacaronLover, не чувак, это невозможно по правилам. Для получения дополнительной информации просмотрите http://stackoverflow.com/questions/30075827/android-statusbar-icons-color. Благодарю. –

+0

Хорошо, большое спасибо за вашу помощь. Hiren :-) – MacaronLover

0

Вы можете сделать это только с Lollipop (API level 21) и далее.

if (Build.VERSION.SDK_INT >= 21) { 
    getWindow().setStatusBarColor(Color.parseColor("#E32017")); 
} 
+0

Вы знаете, как решить эту проблему с правильным ответом и кодом [Быстрая прокрутка большой буквы большого пальца просмотр нет? (http://stackoverflow.com/questions/31321784/fast-scroll-large-letter-thumb-preview-not-appearing) – MacaronLover