Header Ads

Header ADS

How to use Navigation Drawer||Custom Navigation Drawer in Android Studieo.


how to create Navigation Drawer Activity.

 

 Step 1:
--------
//add to gradle.properties.

android.enableJetifier=true



add
//noinspection GradleCompatible to build gradle.

    implementation 'com.android.support:design:28.0.0'



//sync now


step 2
------------

//make themes

 Theme.AppCompat.Light.NoActionBar


step 3
------------

change layout to

 androidx.drawerlayout.widget.DrawerLayout

 android:id="@+id/drawerLayout"
 tools:openDrawer="start"


Step 4
------------
//////////////////////////////////////////////////
//create

  <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        >
        <androidx.appcompat.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/teal_200"
            app:title="Navigation Drawer"
            >

        </androidx.appcompat.widget.Toolbar>
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            >

            
        </LinearLayout>
    </RelativeLayout>
//////////////////////////////////////////////////////
step 5
------------

//create a new layout as headerlayout

step 6
------------
create a menu direcory forome Android Resource diroctory and then create a menu resource file in it.

create items in it like this.
==================================================================================

    <item android:title="Main Title Here">
    </item>

<group>
    <item android:id="@+id/menu_home"
        android:title="Home"
        android:icon="@drawable/baseline_home_24"
        >
    </item>

    <item android:id="@+id/menu_share"
        android:title="Share"
        android:icon="@drawable/baseline_share_24"
        >
    </item>
</group>


    <group
        android:checkableBehavior="none"
        >
        <item android:id="@+id/menu_contact"
            android:title="Contact"
            android:icon="@drawable/baseline_tag_faces_24"
            >
        </item>

    </group>

        <item
            android:title="About App"
            >
     <menu>

    <item android:id="@+id/menu_Rate"
        android:title="Rate us"
        android:icon="@drawable/baseline_star_rate_24"
        >
    </item>

     </menu>
     </item>
=============================================================================

step 7
-------------
create NavigationView outside relative layout in mainactivity.xml

  <com.google.android.material.navigation.NavigationView
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:id="@+id/navmenu"
        app:menu="@menu/my_menu"
        app:headerLayout="@layout/headerlayout"
        android:layout_gravity="start"
        >
  </com.google.android.material.navigation.NavigationView>


step 8
-------------

JAVA


    NavigationView nav;
    ActionBarDrawerToggle toggle;
    DrawerLayout drawerLayout;
    Toolbar toolbar;


 //After setContentView


//===================================================================================
//==NavigationView=================================================================================
        toolbar= findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
        nav = findViewById(R.id.navmenu);
        drawerLayout = (DrawerLayout) findViewById(R.id.drawerLayout);

        toggle=new ActionBarDrawerToggle(this,drawerLayout,toolbar,R.string.open,R.string.close);
        drawerLayout.addDrawerListener(toggle);
        toggle.syncState();


        nav.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
            @Override
            public boolean onNavigationItemSelected(@NonNull MenuItem item) {



                switch (item.getItemId()){
                    case R.id.menu_home:
                        Toast.makeText(getApplicationContext(),"Home is Open", Toast.LENGTH_SHORT).show();
                        //startActivity(MainActivity.this,AnotherActivity.class);
                        drawerLayout.closeDrawer(GravityCompat.START);
                        break;

                    case R.id.menu_share:
                        Toast.makeText(getApplicationContext(),"Share is Open",Toast.LENGTH_SHORT).show();

                        drawerLayout.closeDrawer(GravityCompat.START);
                        break;

                    case R.id.menu_contact:
                        Toast.makeText(getApplicationContext(),"Contact is Open",Toast.LENGTH_SHORT).show();

                        drawerLayout.closeDrawer(GravityCompat.START);
                        break;

                    case R.id.menu_Rate:
                        Toast.makeText(getApplicationContext(),"menu_Rate is Open",Toast.LENGTH_SHORT).show();

                        drawerLayout.closeDrawer(GravityCompat.START);
                        break;

                }

                return true;
            }
        });
//==NavigationView============================================================================================
//==============================================================================================


 

 

No comments

Custom alert dialogue in Android studio Java.

                               Custom alert dialogue in Android studio Java.   Hello friend welcome to CM coding l...

Theme images by Jason Morrow. Powered by Blogger.