Toolbar
のテキストのサイズを変更したい。私のアプリケーションでは、Toolbar
テキストのサイズが横モードと縦モードの両方で異なるためです。
Toolbar
のテキストのテキストサイズを変更することはできますか?
app:titleTextAppearance
を使用します。
<Android.support.v7.widget.Toolbar
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
Android:layout_width="match_parent"
Android:layout_height="?actionBarSize"
Android:id="@+id/toolbar"
app:titleTextAppearance="@style/Toolbar.TitleText" />
カスタムスタイルでデフォルトのタイトルサイズをオーバーライドします。
<style name="Toolbar.TitleText" parent="TextAppearance.Widget.AppCompat.Toolbar.Title">
<item name="Android:textSize">18sp</item>
</style>
結果:
たとえば、このツールバー
<Android.support.v7.widget.Toolbar
Android:id="@+id/toolbar"
Android:layout_width="match_parent"
Android:layout_height="?attr/actionBarSize"
Android:background="?attr/colorPrimary"
Android:gravity="center"
Android:minHeight="?attr/actionBarSize"
app:theme="@style/ThemeOverlay.AppCompat.ActionBar" />
このビューを簡単に追加できます
app:titleTextAppearance="@style/yourstyle"
style.xml
<style name="yourstyle" parent="@style/Base.TextAppearance.AppCompat.Title">
<item name="Android:textSize">20sp</item>
</style>
そのように...
TextView
をツールバーに追加して、必要に応じてカスタマイズできます。
<Android.support.v7.widget.Toolbar
Android:id="@+id/toolbar"
Android:layout_height="wrap_content"
Android:layout_width="match_parent">
<TextView
Android:id="@+id/toolbar_title"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="@string/app_name"
Android:textSize="25sp"/>
</Android.support.v7.widget.Toolbar>
Typeface typeFace = Typeface.createFromAsset(getAssets(), "fonts/font_name.ttf");
((TextView) toolbar.getChildAt(0)).setTypeface(typeFace); // set custom typeface - font
((TextView)toolbar.getChildAt(0)).setTextSize(30); // set title font size
onCreate
でこれを試してください:
Android.support.v7.app.ActionBar actionbar = getSupportActionBar();
TextView textview = new TextView(MainActivity.this);
RelativeLayout.LayoutParams layoutparams = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
textview.setLayoutParams(layoutparams);
textview.setText(getString(R.string.your_string));
textview.setTextColor(Color.WHITE);
textview.setTextSize(18);
actionbar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
actionbar.setCustomView(textview);
これは Android-Examples.com から取得されます。