Android TV プロジェクトのリーンバック サポート ライブラリは、TV エクスペリエンスを標準化するための優れた取り組みのようです。しかし、私はそれが少し硬すぎると感じており、配色などのマイナーなものを超えてカスタマイズを制限しています.
私の質問: リーンバック フレームワークの主要部分を書き直すことなく、DetailsFragment などの画面をカスタマイズするための最良かつ最も効率的な方法は何ですか?
背景情報
私ができるようにしたいいくつかのこと:
- アプリのデザインに固有の追加情報を表示する DetailsOverViewRow (画像、タイトル/説明、アクション ボタン) の下に 1 つまたは 2 つの追加のビューを配置します (たとえば、絵文字リアクション パネルと映画クレジット パネル - ほとんどが映画のサムネイル画像と名前テキスト ビュー)クリエイター)
- カードのサムネイル画像を正しくトリミングして、画像ビューに完全に収まるようにします。ブラウザ画面のカード ビューとは異なり、カード ビューにうまく収まる画像は現在クリップされています。ライブラリのxml レイアウト ファイルはかなり小さいコンテナー サイズ(274 dp の固定高さ) を定義しているため、画像が適切にトリミングされていない可能性があります。
私が試したこと
DetailsOverViewRowPresenter
追加のビューを定義するカスタム XML ファイルを拡張できるように拡張します。残念ながら、このクラスはそのキー初期化メソッドを隠してcreateRowViewHolder->private initDetailsOverview(ViewHolder vh)
いるため、このような隠しながらもキーとなるメソッドを複製する必要があり、サブクラス化のポイントが無効になります。そのようなコードを再作成するよりも良い方法はありますか? 注: このアプローチは、この関連する質問に投稿されたものと似ている可能性がありますが、OP はこれ以上詳しく説明しませんでした。