@Override
  protected void onCreate(Bundle inState) {
    super.onCreate(inState);

    if (inState != null) {
      mActivePosition = inState.getInt(STATE_ACTIVE_POSITION);
    }

    mMenuDrawer =
        MenuDrawer.attach(this, MenuDrawer.Type.BEHIND, getDrawerPosition(), getDragMode());

    List<Object> items = new ArrayList<Object>();
    items.add(new Item("Item 1", R.drawable.ic_action_refresh_dark));
    items.add(new Item("Item 2", R.drawable.ic_action_select_all_dark));
    items.add(new Category("Cat 1"));
    items.add(new Item("Item 3", R.drawable.ic_action_refresh_dark));
    items.add(new Item("Item 4", R.drawable.ic_action_select_all_dark));
    items.add(new Category("Cat 2"));
    items.add(new Item("Item 5", R.drawable.ic_action_refresh_dark));
    items.add(new Item("Item 6", R.drawable.ic_action_select_all_dark));
    items.add(new Category("Cat 3"));
    items.add(new Item("Item 7", R.drawable.ic_action_refresh_dark));
    items.add(new Item("Item 8", R.drawable.ic_action_select_all_dark));
    items.add(new Category("Cat 4"));
    items.add(new Item("Item 9", R.drawable.ic_action_refresh_dark));
    items.add(new Item("Item 10", R.drawable.ic_action_select_all_dark));

    mList = new ListView(this);

    mAdapter = new MenuAdapter(this, items);
    mAdapter.setListener(this);
    mAdapter.setActivePosition(mActivePosition);

    mList.setAdapter(mAdapter);
    mList.setOnItemClickListener(mItemClickListener);

    mMenuDrawer.setMenuView(mList);
  }