2016-11-06 6 views
9

काम कर रहा है मैं का उपयोग कर navigation drawer सेटअप करना चाहता हूं। आइटम दिखाई नहीं दे रहे हैं, लेकिन जब हम खाली क्षेत्र पर क्लिक करते हैं, तो विशेष आइटम क्लिक कोड निष्पादित हो रहा है। ऐसा लगता है कि आइटम अदृश्य हैं लेकिन क्लिक करने योग्य हैं।NavigationView दिखाई नहीं दे रहा है लेकिन आइटम क्लिक

मैंने पृष्ठभूमि रंग के साथ खेलने की कोशिश की है लेकिन ऐसा लगता है कि यह काम नहीं करता है।

किसी भी मदद की सराहना की जाएगी।

home.xml

<?xml version="1.0" encoding="utf-8"?> 

<android.support.v4.widget.DrawerLayout  
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:id="@+id/drawerLayout" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="@color/White" 
android:fitsSystemWindows="true" 
tools:context=".Home.HomeActivity"> 

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical"> 

    <include 
     android:id="@+id/tool_bar" 
     layout="@layout/tool_bar" /> 

    <!-- Main Content --> 

    <FrameLayout 
     android:id="@+id/content_frame" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 

</LinearLayout> 


<android.support.design.widget.NavigationView 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:layout_gravity="start" 
    android:background="@color/White"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="@color/White" 
     android:orientation="vertical" 
     android:weightSum="1"> 

     <android.support.design.widget.NavigationView 
      android:id="@+id/NavigationView" 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_gravity="start" 
      android:layout_weight="1" 
      android:background="@color/White" 
      android:fitsSystemWindows="true" 
      android:scrollbars="none" 
      app:elevation="0dp" 
      app:headerLayout="@layout/navigation_header" 
      app:itemIconTint="@color/YellowOrange" 
      app:itemTextColor="@color/Black" 
      app:menu="@menu/nav_menu" /> 

     <com.squawkinit.orionfreightelite.customview.CustomTextView 
      android:id="@+id/tvAppVersion" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center_horizontal" 
      android:padding="10dp" 
      android:textColor="@color/Black" 
      android:textSize="14sp" /> 

    </LinearLayout> 
</android.support.design.widget.NavigationView> 
</android.support.v4.widget.DrawerLayout> 

nav_menu.xml (मेनू)

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:app="http://schemas.android.com/apk/res-auto"> 

<group android:checkableBehavior="single"> 

    <item 
     android:id="@+id/dashboardMenu" 
     android:title="@string/dashboard_menu" /> 

    <item 
     android:id="@+id/eLogMenu" 
     android:title="@string/eLog_menu" /> 

    <item 
     android:id="@+id/emergencyMenu" 
     android:title="@string/emergency_menu" /> 


    <item 
     android:id="@+id/syncMenu" 
     android:actionLayout="@layout/sync_status" 
     android:title="@string/sync_menu" /> 

    <item 
     android:id="@+id/manifestMenu" 
     android:title="@string/manifest_menu" /> 

    <item 
     android:id="@+id/groupMessagingMenu" 
     android:title="@string/group_messaging_menu" /> 


    <item 
     android:id="@+id/helpMenu" 
     android:title="@string/help_menu" /> 

    <item 
     android:id="@+id/logoutMenu" 
     android:title="@string/logout_menu" /> 
</group> 

navigation_header.xml

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="@color/White"> 

<LinearLayout 
    android:id="@+id/navigationHeader" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:background="@color/accent_material_dark" 
    android:orientation="vertical"> 

    <ImageView 
     android:id="@+id/ivDrawerIcon" 
     android:layout_width="100dp" 
     android:layout_height="100dp" 
     android:layout_marginTop="20dp" 
     android:layout_gravity="center_horizontal" 
     android:src="@drawable/orion_elite_logo" /> 

    <com.squawkinit.orionfreightelite.customview.CustomTextView 
     android:id="@+id/tvDrawerName" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:textColor="@color/White" 
     android:textSize="16sp" /> 

    <com.squawkinit.orionfreightelite.customview.CustomTextView 
     android:id="@+id/tvDrawerMobile" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_marginBottom="5dp" 
     android:textColor="@color/LightWhite" 
     android:textSize="14sp" /> 
</LinearLayout> 

CustomTextView

public class CustomTextView extends TextView { 

public CustomTextView(Context context) { 
    super(context); 
    // TODO Auto-generated constructor stub 

    if (!isInEditMode()) 
     setCustomFont(context); 
} 

public CustomTextView(Context context, AttributeSet attrs) { 
    super(context, attrs); 
    // TODO Auto-generated constructor stub 

    if (!isInEditMode()) 
     setCustomFont(context); 
} 

public CustomTextView(Context context, AttributeSet attrs, int defStyle) { 
    super(context, attrs, defStyle); 
    // TODO Auto-generated constructor stub 

    if (!isInEditMode()) 
     setCustomFont(context); 
} 

public void setCustomFont(Context ctx) { 

    Typeface tf = Typeface.createFromAsset(ctx.getAssets(), 
      "fonts/DroidSerif_Regular.ttf"); 

    setTypeface(tf); 

    } 
} 

विषय

<style name="MyMaterialTheme.Base" parent="Theme.AppCompat.Light.NoActionBar"> 

    <item name="colorPrimary">@color/Black</item> 
    <item name="android:textColorPrimary">@color/Black</item> 
    <item name="android:textColorSecondary">@color/Black</item> 
    <item name="colorAccent">@color/Orange</item> 
    <item name="textColor">@color/Black</item> 
</style> 

Navigation Drawer

+0

आप नेविगेशन बार देखा गया मैं लगता है कि उन दोनों के टकरा रहे हैं नेस्ट है होना चाहिए .... यह केवल एक बनाने के लिए और सभी आंतरिक जोड़ने नेविगेशन बाहरी को विशेषता देते हैं और मुझे लगता है कि यह काम करना चाहिए –

+0

मुझे @ कुनलपारीख – moDev

+0

बाहरी नेविगेशन दृश्य को बाहरी स्थानांतरित करने के बाद समान आउटपुट करने दें। @ कुनलपारीख – moDev

उत्तर

6

अंत में !! मैंने इसे काम किया।

navigation_header जड़ में लेआउट ऊंचाई wrap_content बजाय match_parent

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" // This should be wrap_content 
android:background="@color/White"> 

<LinearLayout 
android:id="@+id/navigationHeader" 
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:background="@color/accent_material_dark" 
android:orientation="vertical"> 

<ImageView 
    android:id="@+id/ivDrawerIcon" 
    android:layout_width="100dp" 
    android:layout_height="100dp" 
    android:layout_marginTop="20dp" 
    android:layout_gravity="center_horizontal" 
    android:src="@drawable/orion_elite_logo" /> 

<com.squawkinit.orionfreightelite.customview.CustomTextView 
    android:id="@+id/tvDrawerName" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal" 
    android:textColor="@color/White" 
    android:textSize="16sp" /> 

<com.squawkinit.orionfreightelite.customview.CustomTextView 
    android:id="@+id/tvDrawerMobile" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal" 
    android:layout_marginBottom="5dp" 
    android:textColor="@color/LightWhite" 
    android:textSize="14sp" /> 

+0

कुछ बार गड़बड़ गलती हमें खर्च करती है। आगे बढ़ो –

1

मैं कर सकता नहीं 100% पुन: पेश क्योंकि मेरे पास आपकी कस्टम कक्षाएं नहीं हैं, लेकिन नेविगेशन नेविगेशन व्यू ने मुझे एक मेनू दिया जो ऊपर से ऑफसेट था।

तो बाहरी नेविगेशन व्यू को हटाने के बारे में, इस तरह?

<?xml version="1.0" encoding="utf-8"?> 

<android.support.v4.widget.DrawerLayout  
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:id="@+id/drawerLayout" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="@color/White" 
android:fitsSystemWindows="true" 
tools:context=".Home.HomeActivity"> 

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical"> 

    <include 
     android:id="@+id/tool_bar" 
     layout="@layout/tool_bar" /> 

    <!-- Main Content --> 

    <FrameLayout 
     android:id="@+id/content_frame" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     app:layout_behavior="@string/appbar_scrolling_view_behavior" /> 

</LinearLayout> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="@color/White" 
     android:orientation="vertical" 
     android:weightSum="1"> 

     <android.support.design.widget.NavigationView 
      android:id="@+id/NavigationView" 
      android:layout_width="match_parent" 
      android:layout_height="0dp" 
      android:layout_gravity="start" 
      android:layout_weight="1" 
      android:background="@color/White" 
      android:fitsSystemWindows="true" 
      android:scrollbars="none" 
      app:elevation="0dp" 
      app:headerLayout="@layout/navigation_header" 
      app:itemIconTint="@color/YellowOrange" 
      app:itemTextColor="@color/Black" 
      app:menu="@menu/nav_menu" /> 

     <com.squawkinit.orionfreightelite.customview.CustomTextView 
      android:id="@+id/tvAppVersion" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center_horizontal" 
      android:padding="10dp" 
      android:textColor="@color/Black" 
      android:textSize="14sp" /> 

    </LinearLayout> 
</android.support.v4.widget.DrawerLayout> 
+0

मैंने कोशिश की लेकिन यह काम नहीं कर रहा है – moDev

+0

जोड़ा गया कस्टमटेक्स्टव्यू कोड – moDev

संबंधित मुद्दे