2013-10-01 3 views
7

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

Я не хочу ничего менять по поводу стиля моего приложения или моего фона.

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

Я думаю, что бы это было бы так просто, как установка

<style name="AppTheme" parent="AppBaseTheme"> 
<item name="android:windowTitleBackgroundStyle">@drawable/backrepeat</item> 
</style> 

В styles.xml

Однако это не дает никаких изменений whatsover.

Для Комплектность ниже мой backrepeat файл

<bitmap 
xmlns:android="http://schemas.android.com/apk/res/android" 
android:src="@drawable/bg_diamonds" 
android:tileMode="repeat" 
android:dither="true" 
/> 

и код в Manifest.xml

<application 
android:allowBackup="true" 
android:icon="@drawable/maxmm_start_icon" 
android:label="@string/app_name" 
android:theme="@style/AppTheme" > 

ответ

23

Вы можете использовать его при создании активности. (OnCreate)

ActionBar bar = getActionBar(); 
//for color 
bar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#00C4CD"))); 
//for image 
bar.setBackgroundDrawable(getResources().getDrawable(R.drawable.settings_icon)); 
+1

Это работает, спасибо (Причина я не делал это потому, что он требует минимального SDK версия, выше той, которую я поддерживал. Но я работал над этим.) –

+0

Если вы используете это, чтобы сделать ActionBar цветом certian, то он влияет на значок ActionBar Overflow - любая идея, как изменить этот значок, чтобы исправить это? –

+1

спасибо, он работает – vNext

10

Вы можете изменить цвет заголовка с помощью этого кода добавьте эти строки в OnCreate():

ColorDrawable colorDrawable = new ColorDrawable(Color.parseColor("#20a780")); 
    getSupportActionBar().setBackgroundDrawable(colorDrawable); 
Смежные вопросы