Как добавить отступ/маржу между значком и кнопкой «Вверх» панели действий?

Мне нужно установить отступ 10 dp между кнопкой вверх и значком, 5 dp между значком и заголовком на панели действий по умолчанию (Android 4.2.2), может ли кто-нибудь предложить, как это можно сделать.

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

Можно ли этого достичь с помощью панели действий по умолчанию. Я могу изменить высоту панели действий.


person user2702700    schedule 07.09.2013    source источник


Ответы (1)


Вы можете добавить padding/margin, получив ImageView значка из панели действий.

Вот как:

ImageView icon = (ImageView) findViewById(android.R.id.home);
FrameLayout.LayoutParams iconLp = (FrameLayout.LayoutParams) icon.getLayoutParams();
iconLp.topMargin = iconLp.bottomMargin = 0;
icon.setLayoutParams(iconLp);

Редактировать. Используйте этот код, например, в методе onCreate вашей деятельности.

person Philipp Jahoda    schedule 07.09.2013
comment
Это не поддерживает API10 :( - person Kaloyan Roussev; 12.10.2013
comment
На самом деле должно. Каково ваше сообщение об ошибке? Что не поддерживается? - person Philipp Jahoda; 12.10.2013
comment
Желтая линия под android.R.id.home, и если я наведу на нее курсор, я получу Поле требует уровня API 11 (текущий минимум 10): android.R.id#home кстати, я использую sherlockactionbar - person Kaloyan Roussev; 12.10.2013
comment
Ах да, ActionBar был представлен в API 10, но на домашнюю иконку можно ссылаться только в API 11 или выше. - person Philipp Jahoda; 12.10.2013
comment
так есть ли способ изменить это поле там? - person Kaloyan Roussev; 12.10.2013
comment
@PhilippJahoda - в Lollipop выдается следующая ошибка java.lang.NullPointerException: Попытка вызвать виртуальный метод android.view.ViewGroup$LayoutParams android.widget.ImageView.getLayoutParams() для нулевой ссылки на объект - person Durai Amuthan.H; 16.04.2015