使用するツールバーがあり、タイトルを設定します:
((ActionBarActivity)getActivity()).getSupportActionBar().setTitle("Home");
色を黒から白に変更する方法はありますか?
私は独自のテーマを作成し、このようにxmlに設定しようとしましたが、サイコロはありません:
<resources>
<!-- Base application theme. -->
<style name="AppTheme2" parent="Theme.AppCompat">
<item name="Android:windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<item name="colorPrimary">@color/primary</item>
<item name="colorPrimaryDark">@color/primary_dark</item>
<item name="colorAccent">@color/accent</item>
<item name="Android:textColorPrimary">@color/primary_text</item>
<item name="Android:textColorSecondary">@color/secondary_text</item>
</style>
<style name="Widget.MyApp.ActionBar" parent="Widget.AppCompat.ActionBar">
<item name="Android:background">@color/primary</item>
<item name="theme">@style/ThemeOverlay.MyApp.ActionBar</item>
<item name="popupTheme">@style/ThemeOverlay.AppCompat.Light</item>
</style>
<style name="ThemeOverlay.MyApp.ActionBar" parent="ThemeOverlay.AppCompat.ActionBar">
<item name="Android:textColorPrimary">#FFFFFF</item>
</style>
</resources>
XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:background="#e5e5e5"
Android:orientation="vertical" >
<Android.support.v7.widget.Toolbar
Android:id="@+id/toolbar"
Android:minHeight="?attr/actionBarSize"
Android:background="@color/primary"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
style="@style/Widget.MyApp.ActionBar">
<Spinner
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:id="@+id/statsSpin"
Android:spinnerMode="dropdown"
Android:textColor="#FFFFFF"/>
</Android.support.v7.widget.Toolbar>
<ListView
Android:id="@+id/yourStats"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:dividerHeight="0px"
Android:divider="@null"
>
</ListView>
</LinearLayout>
プログラムで:
toolbar.setTitleTextColor(0xFFFFFFFF);
テーマvsスタイルのブログ投稿 AppCompatの作成者と AppCompatのバージョン21 の投稿、DarkActionBarツールバー(つまり、Toolbar
暗い背景と明るいテキスト)、Android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
をToolbar
のXMLに:
<Android.support.v7.widget.Toolbar
Android:id="@+id/toolbar"
Android:minHeight="?attr/actionBarSize"
Android:background="@color/primary"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
<Spinner
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:id="@+id/statsSpin"
Android:spinnerMode="dropdown"/>
</Android.support.v7.widget.Toolbar>
これにより、テキストの色とデフォルトの色が多くの属性(Spinner
など)から暗い背景に必要な明るいテキストに変更されます。
アプリケーションベーステーマで新しいスタイルを作成する
<style name="custom_toolbar" parent="@style/Widget.AppCompat.Toolbar">
<item name="titleTextColor">#replace with color</item>
</style>
ツールバーのスタイルを使用します
<item name="toolbarStyle">@style/custom_toolbar</item>
私は希望よりも多くの答えがあることを知っています、それは上記の答えを理解していない人を助けるでしょう。
Androidには、ツールバーと呼ばれるビューがあります。このビューには、アイテム名がaccentであるcolor.xmlリソースから常にデフォルトの色として使用されるタイトルがあります。ツールバーの色は2つの方法で変更できます。
私はそれを行うことをお勧めしますxml経由で、ここでは例を見ることができます
<Android.support.v7.widget.Toolbar
Android:id="@+id/toolbar"
Android:layout_width="match_parent"
Android:layout_height="?attr/actionBarSize"
app:titleTextColor="@color/White" />Here you can change it.Remember APP attribute not Android
アクティビティまたはフラグメント内でプログラムを介して。
Toolbar toolbar = (Toolbar)findViewById(R.id.toolbar);
toolbar.setTitleTextColor(ContextCompat.getColor(this, R.color.colorAccent));
タイトルテキストの色のみを変更する場合は、これを試してください。
getSupportActionBar().setTitle(Html.fromHtml("<font color='#746E66'>"+titleText+"</font>"));
できます..!!
上記のようにプログラムで変更できます。ただし、コードの複雑さを軽減するには、style.xmlを使用して変更する必要があります。まず、attrs.xmlをres/valuesフォルダーの下に作成し、2つの参照をattrs.xml以下のようなフォルダ
attrs.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<attr name="toolbar_theme" format="reference" />
<attr name="toolbar_theme_title" format="reference" />
</resources>
参照を定義した後、以下のようにstyle.xmlでスタイルを作成します
style.xml
<style name="CustomTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">#00A4E4</item>
<item name="colorPrimaryDark">#AB0634</item>
<item name="colorAccent">#AB0634</item>
<item name="toolbar_theme">@style/CustomTheme.Toolbar</item>
<item name="toolbar_theme_title">@style/CustomTheme.Toolbar.Title</item>
<item name="Android:textColorPrimary">@color/black</item>
<item name="Android:textColorSecondary">@Android:color/black</item>
<item name="windowActionModeOverlay">true</item>
</style>
<style name="CustomTheme.Toolbar" parent="ThemeOverlay.AppCompat.ActionBar">
<!-- if you have a navigationdrawer you change it color also -->
<item name="colorControlNormal">#AB0634</item>
</style>
<style name="CustomTheme.Toolbar.Title" parent="TextAppearance.Widget.AppCompat.Toolbar.Title">
<!-- Set title size -->
<item name="Android:textSize">@dimen/abc_text_size_title_material_toolbar</item>
<!-- Set title color -->
<item name="Android:textColor">#AB0634</item>
</style>
toolbar_themeおよびtoolbar_theme_title参照をattrs.xmlstyle.xmlでカスタムテーマへのこれらの参照を与える
最後に、以下のようなツールバーへの参照を提供します
<Android.support.v7.widget.Toolbar
Android:id="@+id/toolbar"
Android:layout_width="match_parent"
Android:layout_height="?attr/actionBarSize"
Android:background="?attr/colorPrimary"
Android:theme="?attr/toolbar_theme"
app:titleTextAppearance="?attr/toolbar_theme_title"
Android:elevation="4dp"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
それでおしまい。このテーマをプログラムで指定するか、androidmanifest.xmlで以下のように設定できます。
プログラムで
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(R.style.CustomTheme); // (for Custom theme)
this.setContentView(R.layout.myactivity);
androidmanifest.xml
<application
Android:theme="@style/CustomTheme">
または
<activity
Android:theme="@style/CustomTheme">
Android.support.v7.widget.Toolbar内に、次の行を追加します。
local:titleTextColor="@color/the_color_you_want"
Xmlで:
app:titleTextColor = "@ color/White" as
<Android.support.v7.widget.Toolbar
Android:id="@+id/tb_top"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:background="?attr/colorPrimary"
Android:minHeight="?attr/actionBarSize"
app:theme="@style/AppTheme.DarkToolbar"
app:titleTextColor="@color/White" />
Widget.AppCompat.Toolbarを拡張し、titleTextAppearanceおよびsubtitleTextAppearanceプロパティを設定することにより、カスタムツールバースタイルを定義できます。この方法で、参照用のツールバーのタイトルとサブタイトルの色とテキストサイズを変更できます http://www.zoftino.com/Android-toolbar-tutorial .
<style name="MyAppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="toolbarStyle">@style/MyToolBarStyle</item>
</style>
<style name="MyToolBarStyle" parent="Widget.AppCompat.Toolbar">
<item name="titleTextAppearance">@style/MyTitleTextAppearance</item>
<item name="subtitleTextAppearance">@style/MySubTitleTextAppearance</item>
</style>
<style name="MyTitleTextAppearance" parent="TextAppearance.Widget.AppCompat.Toolbar.Title">
<item name="Android:textSize">25dp</item>
<item name="Android:textColor">#ff3d00</item>
</style>
<style name="MySubTitleTextAppearance" parent="TextAppearance.Widget.AppCompat.Toolbar.Subtitle">
<item name="Android:textSize">20dp</item>
<item name="Android:textColor">#1976d2</item>
</style>
toolbar.setTitleTextColor(getResources()。getColor(R.color.black));
(ツールバーはacitivytクラスでツールバーに付けた名前です)(色の値xmlで目的の色を設定し、選択した色の名前を参照します。ここに示すように、メインカラーの一部を通常の名前のままにします)私は自分でこれを理解するためにしばらく時間がかかりますが、これは私がそれを機能させるための唯一の方法です、ThemEditorはこれを許可する必要がありますが、それはそれです。
このコードを使用
<Android.support.v7.widget.Toolbar
Android:id="@+id/toolbar"
app:titleTextColor="@color/colorAccent"
app:theme="@style/ToolbarColoredBackArrow"
app:subtitleTextColor="@color/colorAccent"
Android:layout_width="match_parent"
Android:layout_height="?attr/actionBarSize"
Android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />
Tachyonfluxを拡張し、HEXで色を設定するには
toolbar.setTitleTextColor(Color.parseColor("#519c3f"));
Kotlinでは、Sandipの答えを使用します。
with(getSupportActionBar()) {
val titleText: String = title.toString()
setTitle(Html.fromHtml("<font color='#746E66'>" + titleText + "</font>"))
}
次のコードを使用して、プログラムで変更できます。
toolbar.setTitleTextColor(Android.graphics.Color.WHITE);
次のようにactionBarTheme属性を使用して、アクションバーのテーマを変更できます。 APIレベル21で追加されましたが、古いAPIと互換性があるようです。
<style name="AppTheme" parent="Theme.AppCompat.Light">
<item name="actionBarTheme">@style/AppTheme.AppBarOverlay</item>
</style>