2016-07-01 35 views
1

ツールバーのテキストの色を変更しようとしていますが、払拭しません。ここに私のコードです。ツールバーのテキストの色を変更する

のstyles.xml

<!-- Base application theme. --> 
<style name="BasicTheme" parent="Theme.AppCompat.Light.NoActionBar"> 

</style> 
<style name="ToolbarTheme" parent="BasicTheme"> 
    <item name="android:textColor">@color/text_color</item> 
</style> 

tool_lay

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v7.widget.Toolbar  
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:appo="http://schemas.android.com/tools" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="?attr/actionBarSize" 
    android:id="@+id/toolbar" 
    android:elevation="10dp" 
    android:background="@color/colorPrimary" 
    appo:theme="@style/ToolbarTheme" 
> 

行為ivity_main.xml

<?xml version="1.0" encoding="utf-8"?> 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 

tools:context="testing.theo.aelfootballclub.MainActivity" 
android:background="#3d827e"> 
<include 

    android:id="@+id/toolbar" 
    layout="@layout/tool_lay" 

    /> 
<LinearLayout 
    android:padding="20dp" 
    android:background="#6e7398" 
    android:layout_centerHorizontal="true" 
    android:layout_centerVertical="true" 
    android:layout_width="wrap_content" 
    android:orientation="vertical" 
    android:layout_height="wrap_content"> 

    <EditText 
     android:id="@+id/user_name" 
     android:hint="Userame" 
     android:layout_width="250dp" 
     android:layout_height="wrap_content" /> 
    <EditText 
     android:id="@+id/user_pass" 
     android:layout_width="250dp" 
     android:layout_height="wrap_content" 
     android:inputType="textPassword" 
     android:layout_marginTop="20dp" 
     android:hint="Κωδικός" 
     /> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <Button 
      android:layout_gravity="center_horizontal" 
      android:text="Εισοδος" 
      android:layout_marginTop="20dp" 
      android:layout_width="0dp" 
      android:layout_weight="1" 
      android:layout_height="wrap_content" 
      android:onClick="userLogin"/> 

     <Button 
      android:layout_marginTop="20dp" 
      android:layout_gravity="center_horizontal" 
      android:text="Εγγραφη" 
      android:layout_width="0dp" 
      android:onClick="userReg" 
      android:layout_weight="1" 
      android:layout_height="wrap_content" /> 

    </LinearLayout> 

    <TextView 
     android:textStyle="bold|italic" 
     android:textSize="25sp" 
     android:layout_gravity="center_horizontal" 
     android:text="Ξεχασες τον κωδικό?" 
     android:id="@+id/forgotPass" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 
</LinearLayout> 

、最終的には私のMainActivity

public class MainActivity extends AppCompatActivity { 
Toolbar toolbar; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    setToolbar(); 
} 
private void setToolbar(){ 
    toolbar = (Toolbar)findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 
    } 

} 

ツールバーの背景色が正常に動作します。私はそれを私が欲しい色に変えることができます。

アイデア、

ありがとう。あなたのToolbarThemeオーバーライドtitleTextAppearanceスタイルで

答えて

3

は、

<item name="actionMenuTextColor">@color/actionMenuTextColor</item> 
+0

をテキストの色を変更するためのXML属性を使用します。原因:android.content.res.Resources $ NotFoundException:リソースID#0xffffff00 – Theo

+0

ええ、コードを更新しました。 – HourGlass

+0

はい、動作しています。ありがとう。 – Theo

2

:あなたがあなたのテーマで

このような
private void setToolbar(){ 
    toolbar = (Toolbar)findViewById(R.id.toolbar); 
    toolbar.setTitleTextColor(ContextCompat.getColor(getApplicationContext(),R.color.yellow)); 
setSupportActionBar(toolbar); 
    } 
0

を行うことができます

<style name="ToolbarTheme" parent="BasicTheme"> 
    <item name="titleTextAppearance">@style/ToolbarTheme.Title</item> 
</style> 

<style name="ToolbarTheme.Title" parent="TextAppearance.Widget.AppCompat.Toolbar.Title"> 
    <item name="android:textColor">{your_color}</item> 
</style> 
0

これを追加Zagórskiの答えはのためのテーマを変更しますtitle、タイトルテキストの色だけを設定することができます:を定義する代わりに、android:textColorPrimaryを設定します。

1
 Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     // Title and subtitle 
     toolbar.setTitle(R.string.about_toolbar_title); 
     toolbar.setSubtitleTextColor(Color.WHITE); 
     toolbar.setTitleTextColor(Color.WHITE); 
     toolbar.setBackgroundColor(getResources().getColor(
       R.color.themeToolbarColor)); 
     toolbar.setNavigationIcon(R.drawable.ic_action_back); 
     toolbar.setNavigationOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       finish(); 
      } 
     }); 
+0

これも良い答えです! – Theo

0

それは私に例外をスルーツールバーに

app:titleTextColor="@color/colorAccent" 
関連する問題