Есть Activity и несколько Fragment которые открываются внутри этого активити. Toolbar находится в активити.
в Toolbar есть бургер иконка и одна иконка из OptionsMenu. В некоторых фрагментах нужно менять цвет иконок в Toolbar(цвет бургера и всех других иконок).
Например, в первом фрагменте стандартный цвет из темы, а во втором красный, а если нажимаем назад и возвращаемся на первый то сново цвет стандартный из темы..
Как это более корректно сделать?
Вам в каждом фрагменте нужно это делать через функцию:
override fun onCreateOptionsMenu(menu: Menu, inflater: MenuInflater) {
super.onCreateOptionsMenu(menu, inflater)
inflater.inflate(R.menu.main_menu, menu)
}
и дальше вы находите нужную вам кнопку:
val item = menu.findItem(R.id.action_refresh); // например у меня так
либо делаете все через when (так на котлине, либо switch), и дальше берете вашу картинку которая присвоена данной кнопке и меняете цвет у ее drawable:
Drawable icon = getResources().getDrawable(R.drawable.ic_refresh_white_24dp);
icon.setColorFilter(getResources().getColor(R.color.colorAccent), PorterDuff.Mode.SRC_IN);
item.setIcon(icon);
на java я думаю все тоже очевидно и понятно, в случае если работаете на java.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
я сериализую объект KeyEvent, превращаю его в строку, а затем сохраняю это значение в бд Oracle, затем читаю строку из бд и пытаюсь десериализовать...
Доброго времени сутокПример из книги, символ в символ, но не работает, шарик не перемещается