ブラウズフラグメントの行ヘッダーのテキストの色とフォントを変更する方法。 メニューのテキストではなく、行の上に表示されるテキストです。android-tvブラウズフラグメント行のテキストの色とフォントを変更する
答えて
あなたのBrowseFragment
のHeaderFragment
のプレゼンターとして提供されているandroid.support.v17.leanback.widget.RowHeaderPresenter
を使用していることを前提としています。あなたが見ることができるように
<android.support.v17.leanback.widget.RowHeaderView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/row_header"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
style="?rowHeaderStyle" />
が、これは通常@style/Widget.Leanback.Row.Header
を指しているrowHeaderStyle
と呼ばれるスタイル属性を使用しています:RowHeaderPresenter
は、次のようになりますR.layout.lb_row_header
からレイアウトを膨張させます。あなたはstyles.xml
に次のように置くことによって、これをオーバーライドすることができます。その後、
<style name="MyCustomRowHeaderStyle" parent="Widget.Leanback.Row.Header">
<item name="android:textColor">@color/red</item>
</style>
<style name="MyCustomBrowseStyle" parent="Theme.Leanback.Browse">
<item name="rowHeaderStyle">@style/MyCustomRowHeaderStyle</item>
</style>
そして、あなたのAndroidManifest.xml
でそれを宣言することによってBrowseFragment
を含むActivity
ためMyCustomBrowseStyle
を使用しています。
david.miholaの回答が色に役立ちますが、カスタムフォントの設定にはまだ問題がありました。この質問に遭遇し、これについても困惑する人のために、私の解決策はここにあります:chrisjenx (Calligraphy)によって行われたすばらしい仕事のおかげで、簡単にグローバル(カスタム)フォントを設定できます:
単にあなたのgradle.buildに書道を追加し、Application.onCreate()
に次のコードを追加します。
CalligraphyConfig.initDefault(new CalligraphyConfig.Builder()
.setDefaultFontPath("fonts/MyCustomFont.ttf")
.setFontAttrId(R.attr.fontPath)
.build()
);
、すべての活動では、次の行を追加します。
@Override
protected void attachBaseContext(Context newBase) {
super.attachBaseContext(CalligraphyContextWrapper.wrap(newBase));
}
これは、フォントのトリックを行っています1つのTextViewごとにレイアウトを変更せずに私のために。書道のドキュメンテーションにもいくつかの可能性があります。見てみな。
この質問を見つけて、(カスタム)フォントをグローバルに設定しようとしている他の人に役立つことを祈っています。
ダビデの答えに加えて。
rowHeaderStyle
(これら二つの断片があなたのBrowseFragment
を構成する)RowFragment
でHeaderFragment
のメニュー項目と列のタイトルに両方のスタイルを適用します。
そのスタイル(特にフォントの色)を異ならせる場合は、BrowseFragment::onCreateHeadersFragment()
を上書きして、その時点で特定のテーマを適用できます。 )
<style name="AppTheme.Leanback.Browse.Row" parent="@style/Theme.Leanback.Browse">
<item name="rowHeaderStyle">@style/AppTheme.Leanback.Row</item>
</style>
<style name="AppTheme.Leanback.Browse.Header" parent="@style/AppTheme.Leanback.Browse.Row">
<item name="rowHeaderStyle">@style/AppTheme.Leanback.Header</item>
</style>
<style name="AppTheme.Leanback.Row" parent="Widget.Leanback.Row.Header">
<item name="android:textColor">@color/font_row</item>
</style>
<style name="AppTheme.Leanback.Header" parent="Widget.Leanback.Row.Header">
<item name="android:textColor">@color/font_header</item>
</style>
2マニフェストであなたの活動にAppTheme.Leanback.Browse.Row
テーマを適用します。
1)styles.xml
にこれらのスタイルを追加します。
3)あなたのBrowseFragment
のヘッダーにAppTheme.Leanback.Browse.Header
テーマを適用します。
// Kotlin snippet
override fun onCreateHeadersFragment() : HeadersFragment {
class CustomHeadersFragment : HeadersFragment() {
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View {
return super.onCreateView(
inflater.cloneInContext(ContextThemeWrapper(inflater.context, R.style.AppTheme_Leanback_Browse_Header)),
container,
savedInstanceState
)
}
}
return CustomHeadersFragment()
}
- 1. NavBarのフォントとテキストの色の変更
- 2. Javascript - テキストエリア内の特定のテキストのフォント色を変更する
- 3. PDFでテキストのフォント色をプログラムで変更する
- 4. PyQt5 TextEdit Widget入力テキストのフォント色を変更する
- 5. reportlab.pdfgenでテキスト/フォントの色を変更する方法
- 6. WebStorm 2016.1の色とフォントの変更
- 7. テキストの上にマウスを置いたときのフォント色の変更
- 8. フォントを太字、イタリック、フォントの色に変更する方法
- 9. qwebviewの背景イメージ、色、フォントの色を変更するには
- 10. ボタンのラベルのフォントの色とタイトルを変更する
- 11. トップバーの色とタブバーのテキストの色を変更する
- 12. TCLでフォントの色を変更してテキストを太字にする
- 13. Eclipseのテキストの色を変更する
- 14. chartistのテキストの色とサイズの変更
- 15. UIStringDrawing変更フォントの色は - ココアタッチ
- 16. マウスオーバーで複数行のテキストの色を変更する方法
- 17. テキストの色を変更する
- 18. リストビューの行のフォントを変更する
- 19. 変更テキストの色は
- 20. 背景色とテキスト色をJavascriptのタイマーで変更します
- 21. 親のホバーで子divのフォントの色を変更する
- 22. FontSelectorを使用するときのフォントの色とサイズの変更
- 23. Wordpressで複数のテキスト行の色を変更しますか?
- 24. フォント色の中間の文章を変更するには
- 25. 1つのJTreeノードのスタイル(色、フォント)を変更する方法
- 26. vbの文字列のフォント色を変更する
- 27. jquery datepickerで週末のフォントの色を変更する
- 28. eclipseでjavadocの表示フォントの色を変更するには?
- 29. ブラックベリーのカスタムメニュー - メニュー項目のフォント色を変更する
- 30. C#のプロパティ:フライでのフォントと色の変更
私はどこonCreateHeadersFragment' 'に上書き見つけることができませんでした。どうやら私はleanbackの古いバージョンを実行していた、このメソッドは最近25.3.0に追加されました。 https://developer.android.com/reference/android/support/v17/leanback/app/BrowseFragment.html#onCreateHeadersFragment() – Hless