LDrawer

Android drawer icon with material design animation.

Note

Basically same as appcompat_v7 version 21, you can use appcompat_v7

compile 'com.android.support:appcompat-v7:21.0.+'
<style name="AppTheme" parent="Theme.AppCompat.Light">
    <item name="actionBarStyle">@style/ActionBar</item>
</style>

<style name="ActionBar" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="drawerArrowStyle">@style/AppTheme.DrawerArrowToggle</item>
</style>

<style name="AppTheme.DrawerArrowToggle" parent="Base.Widget.AppCompat.DrawerArrowToggle">
    <item name="color">@android:color/white</item>
</style>

Download

via Maven:

<dependency>
  <groupId>com.ikimuhendis</groupId>
  <artifactId>ldrawer</artifactId>
  <version>0.1</version>
</dependency>

or Gradle:

compile 'com.ikimuhendis:ldrawer:0.1'

animated

Usage

You can use like using [normal drawer][2], instead of using android.support.v4.app.ActionBarDrawerToggle use com.ikimuhendis.ldrawer.ActionBarDrawerToggle

First create drawerArrow

drawerArrow = new DrawerArrowDrawable(this) {
        @Override
        public boolean isLayoutRtl() {
            return false;
        }
    };

Then create ActionBarDrawerToggle

mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout,
        drawerArrow, R.string.drawer_open,
        R.string.drawer_close) {

        public void onDrawerClosed(View view) {
            super.onDrawerClosed(view);
            invalidateOptionsMenu();
        }

        public void onDrawerOpened(View drawerView) {
            super.onDrawerOpened(drawerView);
            invalidateOptionsMenu();
        }
    };

You can stop or start animation

mDrawerToggle.setAnimateEnabled(false);

You can set drawerArrow progress or change color

drawerArrow.setProgress(0f); // normal position
drawerArrow.setProgress(1f); // back arrow position
drawerArrow.setColor(R.color.ldrawer_color); // to set color

Example Projects

Google Play
[LDrawer][3]

Google Play
[Yemek Tarifleri][4]

Google Play
[Asparagus - My Recipes][5]

GitHub