2016-11-23 18 views

答えて

0

これを行うにはいくつかの方法がありますが、短い答えはあなたが何をしているにせよ、それはカスタムでなければならないと思います。現在のところ、leanbackは、GoogleがTV固有のコンポーネントとして提供している唯一のフレームワークであり、そのフレームワークは左のナビゲーション用の引き出しを提供します。

私はあなたがleanbackを使用している場合、1つのソリューションを提供できます。 BrowseFragmentには、カスタムのTitleViewを使用できます。このタブにはタブがあり、タブ内のフォーカスが追跡されます。カスタムビューでTitleViewAdapter.Providerが実装されている場合は、BrowseFragmentTitleViewとして使用できます。これの利点は、追加の作業をほとんど必要とせずに、自動的に上から出たり出たりすることができることです。

カスタムビューでは、各タブでfocusRightとfocusLeftを指定し、またはonClickを使用してBrowseFragmentのフラグメントをスワップアウトできます。 This class in leanbackは、BrowseFragment(具体的にはPageRowFragmentFactory)のフラグメントのスワップ方法を示しています。

leanback showcase appは、Androidチームがまとめて遊んでいることを強くお勧めします。 TitleViewのカスタマイズの詳細については

、それは以下のようなものを見てみましょう:lb_browse_title.xmlという名前のXMLファイルを作成します


カスタムビューを作成します

class YourTitleView extends RelativeLayout implements TitleViewAdapter.Provider { 
    ... do custom view setup/logic here ... 
} 

を。これは、TitleViewの作成に使用するleanbackのレイアウトをオーバーライドします。

このlb_browse_title.xmlファイルにタイトルビューを入れて、IDが@+id/browse_title_groupであることを確認してください。これは、あなたのタイトルビューを取得するために、余裕がないことを知っています。

<com.your.android.app.views.YourTitleView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/browse_title_group" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    style="?attr/browseTitleViewStyle" /> 

はその後BrowseFragmentを拡張するフラグメントを作成して、それが自動的にあなたのタイトルビューを適用する必要があります。 BrowseFragmentを起動して実行する方法については、leanback-showcaseアプリを参照してください。

+0

ここに完全なコードを入力してください。 –