web-dev-qa-db-ja.com

Android Navigation Drawerを適切に設計/スタイル設定する方法

標準 Navigation Drawer を適切に設計する方法に関するリソースを見つけるのに問題があります。私は以下のXMLを取得しており、複数のリストビューを作成したり、リストビューのテキストのフォントを変更したりする方法を探しています。

次のデザインのいくつかと同様のデザインをしようとしています。

enter image description here

Design doc を参照する以外に、ドキュメント、ガイド、コード、例、または何らかの方向性を見つけたいと思っています。この新しいAndroidデザインパターンだけでなく、どのように見えるかを設計するパターンを適切に適応させる方法について、より実際のコードを探しています。

NavDrawer

 <Android.support.v4.widget.DrawerLayout    
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:id="@+id/drawer_layout"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent">

<FrameLayout
    Android:id="@+id/content_frame"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent" />

<ListView
    Android:id="@+id/left_drawer"
    Android:layout_width="240dp"
    Android:layout_height="match_parent"
    Android:layout_gravity="start"
    Android:choiceMode="singleChoice"
    Android:divider="@Android:color/transparent"
    Android:dividerHeight="0dp"
    Android:background="#ffffff"/>
 </Android.support.v4.widget.DrawerLayout>

TextView

<TextView xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:id="@Android:id/text1"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:background="?android:attr/activatedBackgroundIndicator"
Android:gravity="center_vertical"
Android:minHeight="?android:attr/listPreferredItemHeightSmall"
Android:paddingLeft="16dp"
Android:paddingRight="16dp"
Android:text="Loading Content ..."
Android:textAppearance="?android:attr/textAppearanceListItem"
Android:textColor="#000000" />
23
Jaison Brooks

引き出しには、LinearLayoutのような任意のViewGroupを使用できます。 ListViewとFrameLayoutに限定されません。このため、たとえば、アクティビティの他のレイアウトと同様に、ドロワービューをスタイルできます。覚えておくべき唯一のことは、NavigationDrawerが持つことができる子は2つだけであることです。 1つ目はアクティビティのレイアウトで、2つ目は引き出しです。好きなようにスタイルを設定してください!

<Android.support.v4.widget.DrawerLayout
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:id="@+id/drawer_layout"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent">

<FrameLayout
    Android:id="@+id/content_frame"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent" />

<!-- YOUR DRAWER -->
<LinearLayout
    Android:id="@+id/drawer_view"
    Android:layout_width="240dp"
    Android:layout_height="match_parent"
    Android:orientation="vertical"
    Android:layout_gravity="start">

    <!-- Use any Views you like -->
    <ListView
        Android:id="@+id/left_drawer"
        Android:layout_width="match_parent"
        Android:layout_height="match_parent"
        Android:choiceMode="singleChoice"
        Android:divider="@Android:color/transparent"
        Android:dividerHeight="0dp"
        Android:background="#ffffff"/>
</LinearLayout>
</Android.support.v4.widget.DrawerLayout>
34
Steve Benett