Пользовательский значок заголовка в деятельности

Мне нужно динамически установить значок в строке заголовка. В настоящее время у меня есть этот код в моей деятельности:

requestWindowFeature(Window.FEATURE_LEFT_ICON);
setContentView(R.layout.table_layout_activity);
getWindow().setFeatureDrawableResource(Window.FEATURE_LEFT_ICON, R.drawable.icon_procedure);

Это работает нормально, за исключением того, что оно изменяет размер шрифта и удаляет (по умолчанию) граничную линию в нижней части панели. Я хотел бы только установить значок и оставить все остальное по умолчанию.

Строка заголовка по умолчанию:

По умолчанию заголовок,

Пользовательский значок:

Пользовательский значок,

Кто-нибудь может помочь?

3 ответа

Решение

Значок может быть изменен несколькими способами для действий, программно для отдельных действий, как

В onCreate()

getActionBar().setIcon(R.drawable.icon);
// icon is image in res/drawable folder.

Или в теме панели действий, добавив это в свой стиль ActionBar.

<item name="android:icon">@drawable/icon</item>
<!-- This changes icon universally for all Activities in application -->

Поскольку вы используете панель действий, используйте setIcon() на ActionBar чтобы изменить значок, и избавиться от этого другого материала.

Используйте setIcon() для actionBar() или измените его непосредственно в androidManifest.xml

Другие вопросы по тегам