2016-06-27 12 views
5

Ich habe eine Navigationsschublade, die von rechts nach links öffnet, alles funktioniert gut und das Hamburger-Symbol funktioniert gut und es ist in der rechten Ecke, aber Menü-Symbole sind auf der linken Seite Menüpunkte.Display-Menü-Symbole auf der rechten Seite der Menüpunkte

Wie verschiebt man sie nach rechts von Menüpunkten?

Bitte beachten Sie die Abbildung des Displays

enter image description here

Das ist mein menu.xml

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android"> 
    <group android:checkableBehavior="none"> 
     <item 
      android:id="@+id/nav_home" 
      android:icon="@drawable/ic_navigation_home" 
      android:title="@string/nav_menu_home" /> 
     <item 
      android:id="@+id/nav_profile" 
      android:icon="@drawable/ic_menu_profile" 
      android:title="@string/nav_profile" /> 
     <item 
      android:id="@+id/nav_help" 
      android:icon="@drawable/ic_navigation_help" 
      android:title="@string/nav_help" /> 
     <item 
      android:id="@+id/nav_manage" 
      android:icon="@drawable/ic_menu_manage" 
      android:title="@string/nav_manage" /> 
     <item 
      android:id="@+id/nav_logout" 
      android:icon="@drawable/ic_logout" 
      android:title="@string/nav_logout" /> 
    </group> 
    <item android:title="@string/nav_communicate"> 
     <menu> 
      <item 
       android:id="@+id/nav_facebook" 
       android:icon="@drawable/ic_facebookx" 
       android:title="@string/nav_face_page" /> 
      <item 
       android:id="@+id/nav_send" 
       android:icon="@drawable/ic_menu_send" 
       android:title="@string/nav_contact" /> 
     </menu> 
    </item> 
</menu> 

und das ist mein Layout

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical"> 
<android.support.design.widget.AppBarLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:theme="@style/AppTheme.AppBarOverlay"> 
    <android.support.v7.widget.Toolbar 
     android:id="@+id/toolbar" 
     android:layout_width="match_parent" 
     android:layout_height="?attr/actionBarSize" 
     android:background="?attr/colorPrimary" 
     app:popupTheme="@style/AppTheme.PopupOverlay" /> 
</android.support.design.widget.AppBarLayout> 
<android.support.v4.widget.DrawerLayout 
    android:id="@+id/drawer_layout" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:fitsSystemWindows="true" 
    tools:openDrawer="start"> 
    <include 
     layout="@layout/app_bar_main" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" /> 
    <android.support.design.widget.NavigationView 
     android:id="@+id/nav_view" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:layout_gravity="start" 
     android:fitsSystemWindows="true" 
     app:headerLayout="@layout/nav_header_main" 
     app:menu="@menu/activity_main_drawer" /> 
</android.support.v4.widget.DrawerLayout> 
</LinearLayout> 

ich viel gesucht, aber didn‘ t finden Sie etwas zu diesem Thema.

Vielen Dank im Voraus.

+0

Sie müssen Fragment hinzufügen und versuchen, mit recklerview –

+0

@WaqarYounis Vielen Dank für den Hinweis :) – Mohammad

Antwort

3

Wenn Sie NavigationView verwenden DrawerLayout die einzige Art und Weise zu handhaben, die vorhanden sind (derzeit) ist, die zu Ihrem machen NavigationView Recht durch folgenden Code links:

@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1) //call this before super.onCreate 
private void forceRtlIfSupported() { 
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) { 
     getWindow().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_RTL); 
    } 
} 

und setzen RTL-Flag in AndroidManifiest.xml

android:supportsRtl="true" 

Leider wird dieser Weg nur für API 16 und höher unterstützt. Aber Sie können auch DrawerLayout mit ListView implementieren und dann können Sie tun, was Sie wollen. Sie können ein Tutorial zu diesem Ansatz here finden.

+1

Vielen Dank. Ich werde es versuchen und zurück zu dir :) – Mohammad