2017-01-13 37 views
2

私は何千もの記事や他のstackoverflowに関する質問を読んだことがありますが、なぜ私のナビゲーションドロワーが他のアプリのドロワーよりも小さいのか理解できません。ナビゲーション・ドロワーの幅が他よりも小さいのはなぜですか?

これは、現在、私のナビゲーションドロワー次のGoogleのガイドラインである: My Navigation Drawer

そして、私はそれはこのようになりたい: Other Navigation Drawers

(Googleドライブ内の引き出しはの大部分をカバーしてどのように注意してくださいFAB)携帯電話やタブレットの両方に

ハードコーディングandroid:maxWidth="320dp"

)私はこれを達成することができます: My Navigation Drawer with hardcoded maxWidth

これは私が欲しいものですが、Googleのガイドラインに従わず、他のナビゲーション・ドロワーよりも少し小さいです。

FABに加えて、ステータスバーを見て違いを確認することもできます。ここで

は私のホーム画面です:

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

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical"> 

     <!-- My content --> 

    </LinearLayout> 

    <include layout="@layout/drawer"/> 

</android.support.v4.widget.DrawerLayout> 

そして、私のNavigationViewレイアウト:

<android.support.design.widget.NavigationView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/drawer_navigation_view" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:layout_gravity="start" 
    app:headerLayout="@layout/drawer_header" 
    app:menu="@menu/drawer" 
    app:itemTextColor="@drawable/color_selector_drawer_text" 
    app:itemIconTint="@drawable/color_selector_drawer_icon" /> 

私は他のナビゲーション引き出しとしてそれを作るために変更する必要がありますか?

+0

ここでもまったく同じことです。何か見つけましたか? –

+0

@BehnamMabodiいいえ、何も:( –

答えて

1

私は答えを見つけました。
Navigation drawer pattern「モバイルドロワーの最大幅はモバイルで280dp、タブレットでは320dp」となっていますので、アプリ内のデフォルトのナビドロワの幅は意図したとおりですが、他のアプリでは320dp(またはそのようなもの)タブレットと携帯電話の両方のために、彼らは材料設計を無視している。あなたが携帯用に320dp使用したい場合は
はしかし、あなたが追加することができます。

android:layout_width="320dp" 

あなたNavigationViewへ。
私自身のテストでは、nav drawerの幅を「google play」アプリと全く同じにしましたが、私はデフォルトのマテリアルデザインの設定に固執します。

興味深いことに、あなたが使用している場合:

android:layout_width="280dp" 

あなたの現在のNAVの引き出しの幅とまったく同じ幅を実現します!

P.S.このマテリアルデザインガイドラインは単なるテンプレートです(デフォルトおよび推奨値)。多くの要因に応じてアプリに最適な値を選択する必要があります。たとえば、ナビゲーションビューの項目に長いStringが含まれている場合は、モバイルとタブレットの両方で320dpを使用する方が効果的です(逆も同様です)。これは私の意見。

関連する問題