Я хочу установить фон моей панели действий в градиентный цвет. Для этого у меня есть Colorpicker, в котором я могу выбрать начальный и конечный цвет. Я хотел бы использовать эти значения для установки фона.установить фон в градиентный цвет
Но я не знаю, в каком формате значения int должны состоять в том, чтобы установить градиент, который можно вывести на панель действий. Сначала я думал, что формат должен выглядеть примерно так: #FFFFFFF
, как я использую в этом случае: actionbar.setBackgroundDrawable(new ColorDrawable(Color.parseColor(hexFarbe)));
например.
Я попробовал его с этим:
if (x > 10 && x < 138 && y > 316 && y < 356){
endfarbe_zuletzt_gewählt_global = false;
startfarbe_zuletzt_gewählt_global = true;
String hexColor = String.format("#%06X", (0xFFFFFF & startFarbe));
Log.d("startfarbe", "startfarbe " + endFarbe + "|" + hexColor);
startFarbe_global = hexColor;
mListener.colorChanged("startFarbe", startFarbe);
}
Здесь я хочу, чтобы установить цвет ActionBar:
if(!(startFarbe.equalsIgnoreCase(""))&&(!(endfarbe.equalsIgnoreCase("")))){
GradientDrawable gd = new GradientDrawable(
GradientDrawable.Orientation.TOP_BOTTOM,
// new int[] {0xFF616261,0xFF131313});
new int[] {Integer.parseInt(startFarbe), Integer.parseInt(endfarbe)});
actionbar.setBackgroundDrawable(gd);
}
Но тогда я получаю следующее сообщение об ошибке LogCat:
Caused by: java.lang.NumberFormatException: Invalid int: "#0000FF"
Android использует ARGB, вы можете попробовать создать цвет как " #AARRGGBB» –