2016-09-28 4 views
0

Здравствуйте, я делаю один AppCompatActivity как BaseActivity, а в другом все виды деятельности I распространяется с BaseActivity. Теперь в других классах я должен изменить tittle bar color и Tittle text.Нужно изменить цвет ячеек в AppCompatActivity

Это мой toolbar.xml

<android.support.v7.widget.Toolbar 
    android:id="@+id/toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="?attr/actionBarSize" 
    app:layout_scrollFlags="scroll|enterAlways" 
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
    app:title="@string/app_name" /> 

И setActionbar

@Override 
public void setactionbar(int color) { 
    // TODO Auto-generated method stub 

    getSupportActionBar().setBackgroundDrawable(new ColorDrawable(color)); 
    getSupportActionBar().setElevation(0); 
    getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
    getSupportActionBar().setHomeButtonEnabled(true); 

} 

Но не добиться успеха, чтобы изменить цвет и текст

Спасибо заранее.

+0

Вы пробовали установить другую тему для этого класса? –

+0

Вы пытались изменить 'colorPrimary' в' colors.xml' ?? –

+0

попробуйте изменить цвет.xml. и если проблема по-прежнему происходит, напишите свой style.xml здесь. –

ответ

1

Попробуйте это ..

ActionBar actionBar = getSupportActionBar(); 
    actionBar.setBackgroundDrawable(new ColorDrawable(Color.parseColor("#95CDBA"))); 
    actionBar.setTitle(Html.fromHtml("<font color='#000099'>Title bar</font>")); 

или

actionBar.setBackgroundDrawable(new ColorDrawable(ContextCompat.getColor(this, R.color.yourcolor))); 

, а также добавить этот параметр, если включить или отключить заголовок

actionBar.setDisplayShowTitleEnabled(true); //for enable or false for disable 

Для панели инструментов вам нужно нравится, что

хотят
toolbar.setTitleTextColor(0xFFFFFFFF); 

или

toolbar.setTitleTextColor(ContextCompat.getColor(this, R.color.yourcolor); 

Для фона

toolbar.setBackgroundDrawable(new ColorDrawable(ContextCompat.getColor(this, R.color.yourcolor))); 
+0

Нет, ее не работает –

0

Правильный способ сделать это, Во-первых, изменить вас тему для ...

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
    <item name="windowNoTitle">true</item> 
    <item name="colorPrimary">@color/your_title_bar_color</item> // default toolbar or actionbar color 
    <item name="colorPrimaryDark">@color/your_title_bar_color_dark</item> //statusbar color 
</style> 

Теперь измените панель инструментов ,

<android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/toolbar" 
    android:layout_width="match_parent" 
    android:layout_height="@dimen/abc_action_bar_default_height_material" 
    android:orientation="vertical" 
    android:background="@drawable/your_title_bar_color" 
    android:title="@string/app_name" 
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light"> 

Теперь в class- сделать метод

private void setupToolbar() { 
    setSupportActionBar(mToolbar); 
} 

Все, что вам нужно сделать, это вызов setupToolbar(). Счастливое кодирование.

Смежные вопросы