Intereting Posts
HttpURLConnection: что делает setFixedLengthStreamingMode () хотите размер? Запуск одного теста Android (unit) из градиента без загрузки других зависимостей проекта Объект Inject с конструктором, который принимает параметр с помощью RoboGuice 2 Android Studio 1.3 SVG для преобразования png Android: `java.lang.IllegalArgumentException: служба не зарегистрирована` при вызове onStop () Диалоговое окно предупреждения Android и установите положительную кнопку Получить уровень заряда подключенных смартватов Проблемы с подключением Bluetooth с помощью IntentService Почему вызов setBackgroundColor в представлении прерывает его длительное изменение цвета и выделение? RequestFeature () необходимо вызвать перед добавлением содержимого в фрагмент Android: получение размера файла перед его совместным использованием (Intent.ACTION_SEND) «Пакет не подписан правильно» для некоторых пользователей Как получить месяц и день в андроиде? Защита постоянной строки от обратного проектирования Ошибка Android при получении информации с сервера «RPC: s-5: AEC-0» в Google Play?

ActionBar настраиваемый заголовок как ImaveView вместо TextView

Я пытаюсь обойти это на панели действий, но из того, что я вижу в названии, в основном является TextView, но мне нужно разместить изображение вместо обычного текста. Я пытаюсь настроить его в стиле theme.xml следующим образом:

<item name="android:actionBarStyle">@style/MyActionBar</item> 

И тогда я определил этот стиль

  <style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar"> <item name="android:background">@drawable/action_background</item> <item name="android:titleTextStyle">@style/ActionbarTitleStyle</item> </style> 

Я думал, что могу определить фон для названия, но даже если я делаю это не то, что я хочу, попробуйте getActionBar (). SetCustomView (макет); Но я понял, что моя панель действий имеет значение null до вызова setContentView, и мне это нужно в базовом классе.

Оплаченный Мне нужно только заботиться о HONEYCOMB и Higher, поэтому, если вы не хотите предлагать варианты Шерлока или Йонанильсона.

Если вы хотите изображение, вы можете указать логотип приложения вместе со значком (он будет использоваться вместо значка):

 <application android:icon="@drawable/ic_launcher" android:logo="@drawable/logo" android:label="@string/app_name" android:name=".AppName" > 

Теперь у вас есть произвольное изображение вместо значка lanucher. Что вам нужно сделать дальше, так это избавиться от текста. В ваших стилях делайте что-то вроде:

 <style name="Widget.Styled.ActionBar" parent="Widget.Sherlock.ActionBar"> <item name="titleTextStyle">@style/NoTitleText</item> <item name="android:titleTextStyle">@style/NoTitleText</item> <item name="subtitleTextStyle">@style/NoTitleText</item> <item name="android:subtitleTextStyle">@style/NoTitleText</item> </style> <style name="NoTitleText"> <item name="android:textSize">0sp</item> <item name="android:textColor">#00000000</item> </style> 

Вы должны использовать оба item name="titleTextStyle" и item name="android:titleTextStyle" если вы используете ActionBarSherlock, если я хорошо помню.

Переопределите setContentView следующим образом:

 @Override public void setContentView(int resLayoutId) { super.setContentView(resLayoutId); // TODO Set your actionbar changes here } 

ИЛИ, вы можете сделать это:

 <style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar"> <item name="android:background">@drawable/action_background</item> <item name="android:titleTextStyle">@style/ActionbarTitleStyle</item> <item name="android:displayOptions">showCustom</item> <item name="android:customNavigationLayout">@layout/custom_nav_layout</item> </style>